13 public abstract class FancyScrollRectCell<TItemData, TContext> : FancyCell<TItemData, TContext>
14 where TContext : class, IFancyScrollRectContext, new()
19 var (scrollSize, reuseMargin) =
Context.CalculateScrollSize();
21 var normalizedPosition = (Mathf.Lerp(0f, scrollSize, position) - reuseMargin) / (scrollSize - reuseMargin * 2f);
23 var start = 0.5f * scrollSize;
26 UpdatePosition(normalizedPosition, Mathf.Lerp(start, end, position));
38 protected virtual void UpdatePosition(
float normalizedPosition,
float localPosition)
41 ?
new Vector2(-localPosition, 0)
42 :
new Vector2(0, localPosition);
TContext Context
FancyScrollView<TItemData, TContext>.Context の参照. セルとスクロールビュー間で同じインスタンスが共有されます. 情報の受け渡しや状態の保持に使用します.
FancyScrollRect<TItemData, TContext> のコンテキスト基底クラス.
Credit Erdener Gonenc - @PixelEnvision.