NoticeItem
Coding Style wiki
NoticeItem 是掛載於紅點圖示 (ICON) 上的通知物件組件 (MonoBehaviour),持有條件 ID 與數據 (NoticeInfo) 的註冊,當持有的任一條件符合時自動顯示自身 GameObject;可透過 Package Manager -> Samples 匯入 NoticeItem Prefab 拖曳至 UI 上直接使用,亦可透過 Add Component -> OxGKit -> NoticeSystem -> NoticeItem 自行掛載。
| 命名空間 | OxGKit.NoticeSystem |
| 類型 | [DisallowMultipleComponent] public class NoticeItem : MonoBehaviour |
| 原始碼 | NoticeItem.cs |
using OxGKit.NoticeSystem;
快速上手
using OxGKit.NoticeSystem;
using UnityEngine;
public class MailUI : MonoBehaviour
{
// 將 NoticeItem prefab 拖曳至 UI 上,再指定引用
public NoticeItem mailNoticeItem;
private MailBox _mailBox = new MailBox();
private void Awake()
{
// 註冊條件與數據 (註冊時會自動檢查條件並刷新顯示)
this.mailNoticeItem.RegisterNotice
(
new NoticeInfo(NewMailCond.id, this._mailBox)
);
}
public void ReceiveMail()
{
// 數據變更後,通知刷新紅點顯示
this._mailBox.unreadCount++;
this.mailNoticeItem.Notify();
}
}
通用規則
顯示規則
- 單一 NoticeItem 可持有多個條件,持有的任一條件符合 (
ShowCondition回傳true) 則顯示自身 GameObject,皆不符合則隱藏 (OR 邏輯)。
重要 NoticeItem 切換的是