Tanoda
FancyCell.cs
Go to the documentation of this file.
1
3
4
6{
14 public abstract class FancyCell<TItemData, TContext> : MonoBehaviour where TContext : class, new()
15 {
19 public int Index { get; set; } = -1;
20
24 public virtual bool IsVisible => gameObject.activeSelf;
25
30 protected TContext Context { get; private set; }
31
36 public virtual void SetContext(TContext context) => Context = context;
37
41 public virtual void Initialize() { }
42
47 public virtual void SetVisible(bool visible) => gameObject.SetActive(visible);
48
53 public abstract void UpdateContent(TItemData itemData);
54
59 public abstract void UpdatePosition(float position);
60 }
61
67 public abstract class FancyCell<TItemData> : FancyCell<TItemData, NullContext>
68 {
70 public sealed override void SetContext(NullContext context) => base.SetContext(context);
71 }
72}
FancyScrollView<TItemData, TContext> のセルを実装するための抽象基底クラス. FancyCell<TItemData, TContext>....
Definition: FancyCell.cs:68
virtual bool IsVisible
このセルの可視状態.
Definition: FancyCell.cs:24
virtual void SetVisible(bool visible)
このセルの可視状態を設定します.
TContext Context
FancyScrollView<TItemData, TContext>.Context の参照. セルとスクロールビュー間で同じインスタンスが共有されます. 情報の受け渡しや状態の保持に使用します.
Definition: FancyCell.cs:30
abstract void UpdatePosition(float position)
0.0f ~ 1.0f の値に基づいてこのセルのスクロール位置を更新します.
abstract void UpdateContent(TItemData itemData)
アイテムデータに基づいてこのセルの表示内容を更新します.
sealed override void SetContext(NullContext context)
virtual void SetContext(TContext context)
Context をセットします.
virtual void Initialize()
初期化を行います.
Definition: FancyCell.cs:41
int Index
このセルで表示しているデータのインデックス.
Definition: FancyCell.cs:19
FancyScrollView<TItemData> のコンテキストクラス.
Credit Erdener Gonenc - @PixelEnvision.