Tanoda
UnityEngine.UI.Extensions.FancyScrollRect< TItemData > Class Template Reference

ScrollRect スタイルのスクロールビューを実装するための抽象基底クラス. 無限スクロールおよびスナップには対応していません. FancyScrollView<TItemData, TContext>.Context が不要な場合は 代わりに FancyScrollRect<TItemData> を使用します. More...

Inheritance diagram for UnityEngine.UI.Extensions.FancyScrollRect< TItemData >:
UnityEngine.UI.Extensions.FancyScrollRect< TItemData, FancyScrollRectContext > UnityEngine.UI.Extensions.FancyScrollView< TItemData, TContext >

Protected Member Functions

override void Initialize ()
 初期化を行います. More...
 
override void Refresh ()
 セルのレイアウトと表示内容を強制的に更新します. More...
 
override void Relayout ()
 セルのレイアウトを強制的に更新します. More...
 
void RefreshScroller ()
 Scroller の各種状態を更新します. More...
 
override void UpdateContents (IList< TItemData > items)
 渡されたアイテム一覧に基づいて表示内容を更新します. More...
 
new void UpdatePosition (float position)
 スクロール位置を更新します. More...
 
virtual void JumpTo (int itemIndex, float alignment=0.5f)
 指定したアイテムの位置までジャンプします. More...
 
virtual void ScrollTo (int index, float duration, float alignment=0.5f, Action onComplete=null)
 指定したアイテムの位置まで移動します. More...
 
virtual void ScrollTo (int index, float duration, Ease easing, float alignment=0.5f, Action onComplete=null)
 指定したアイテムの位置まで移動します. More...
 
void UpdateScrollbarSize (float viewportLength)
 ビューポートとコンテンツの長さに基づいてスクロールバーのサイズを更新します. More...
 
float ToFancyScrollViewPosition (float position)
 Scroller が扱うスクロール位置を FancyScrollRect<TItemData, TContext> が扱うスクロール位置に変換します. More...
 
float ToScrollerPosition (float position)
 FancyScrollRect<TItemData, TContext> が扱うスクロール位置を Scroller が扱うスクロール位置に変換します. More...
 
float ToScrollerPosition (float position, float alignment=0.5f)
 FancyScrollRect<TItemData, TContext> が扱うスクロール位置を Scroller が扱うスクロール位置に変換します. More...
 
void AdjustCellIntervalAndScrollOffset ()
 指定された設定を実現するための FancyScrollView<TItemData,TContext>.cellIntervalFancyScrollView<TItemData,TContext>.scrollOffset を計算して適用します. More...
 
virtual void OnValidate ()
 
- Protected Member Functions inherited from UnityEngine.UI.Extensions.FancyScrollRect< TItemData, FancyScrollRectContext >
override void Initialize ()
 
override void Refresh ()
 
override void Relayout ()
 
void RefreshScroller ()
 Scroller の各種状態を更新します. More...
 
override void UpdateContents (IList< TItemData > items)
 
new void UpdatePosition (float position)
 スクロール位置を更新します. More...
 
virtual void JumpTo (int itemIndex, float alignment=0.5f)
 指定したアイテムの位置までジャンプします. More...
 
virtual void ScrollTo (int index, float duration, float alignment=0.5f, Action onComplete=null)
 指定したアイテムの位置まで移動します. More...
 
virtual void ScrollTo (int index, float duration, Ease easing, float alignment=0.5f, Action onComplete=null)
 指定したアイテムの位置まで移動します. More...
 
void UpdateScrollbarSize (float viewportLength)
 ビューポートとコンテンツの長さに基づいてスクロールバーのサイズを更新します. More...
 
float ToFancyScrollViewPosition (float position)
 Scroller が扱うスクロール位置を FancyScrollRect<TItemData, TContext> が扱うスクロール位置に変換します. More...
 
float ToScrollerPosition (float position)
 FancyScrollRect<TItemData, TContext> が扱うスクロール位置を Scroller が扱うスクロール位置に変換します. More...
 
float ToScrollerPosition (float position, float alignment=0.5f)
 FancyScrollRect<TItemData, TContext> が扱うスクロール位置を Scroller が扱うスクロール位置に変換します. More...
 
void AdjustCellIntervalAndScrollOffset ()
 指定された設定を実現するための FancyScrollView<TItemData,TContext>.cellIntervalFancyScrollView<TItemData,TContext>.scrollOffset を計算して適用します. More...
 
virtual void OnValidate ()
 
virtual void Initialize ()
 初期化を行います. More...
 
virtual void UpdateContents (IList< TItemData > itemsSource)
 渡されたアイテム一覧に基づいて表示内容を更新します. More...
 
virtual void Relayout ()
 セルのレイアウトを強制的に更新します. More...
 
virtual void Refresh ()
 セルのレイアウトと表示内容を強制的に更新します. More...
 
virtual void UpdatePosition (float position)
 スクロール位置を更新します. More...
 

Protected Attributes

float reuseCellMarginCount = 0f
 スクロール中にセルが再利用されるまでの余白のセル数. More...
 
float paddingHead = 0f
 コンテンツ先頭の余白. More...
 
float paddingTail = 0f
 コンテンツ末尾の余白. More...
 
float spacing = 0f
 スクロール軸方向のセル同士の余白. More...
 
- Protected Attributes inherited from UnityEngine.UI.Extensions.FancyScrollRect< TItemData, FancyScrollRectContext >
float reuseCellMarginCount
 スクロール中にセルが再利用されるまでの余白のセル数. More...
 
float paddingHead
 コンテンツ先頭の余白. More...
 
float paddingTail
 コンテンツ末尾の余白. More...
 
float spacing
 スクロール軸方向のセル同士の余白. More...
 
- Protected Attributes inherited from UnityEngine.UI.Extensions.FancyScrollView< TItemData, TContext >
float cellInterval
 セル同士の間隔. More...
 
float scrollOffset
 スクロール位置の基準. More...
 
bool loop
 セルを循環して配置させるどうか. More...
 
Transform cellContainer
 セルの親要素となる Transform. More...
 
bool initialized
 初期化済みかどうか. More...
 
float currentPosition
 現在のスクロール位置. More...
 

Properties

abstract float CellSize [get]
 セルのサイズ. More...
 
virtual bool Scrollable [get]
 スクロール可能かどうか. More...
 
Scroller Scroller [get]
 スクロール位置を制御する FancyScrollView.Scroller のインスタンス. More...
 
- Properties inherited from UnityEngine.UI.Extensions.FancyScrollRect< TItemData, FancyScrollRectContext >
abstract float CellSize [get]
 セルのサイズ. More...
 
virtual bool Scrollable [get]
 スクロール可能かどうか. More...
 
Scroller Scroller [get]
 スクロール位置を制御する FancyScrollView.Scroller のインスタンス. More...
 
- Properties inherited from UnityEngine.UI.Extensions.FancyScrollView< TItemData, TContext >
abstract GameObject CellPrefab [get]
 セルの Prefab. More...
 
IList< TItemData > ItemsSource [get, set]
 アイテム一覧のデータ. More...
 
TContext Context [get]
 TContext のインスタンス. セルとスクロールビュー間で同じインスタンスが共有されます. 情報の受け渡しや状態の保持に使用します. More...
 

Detailed Description

ScrollRect スタイルのスクロールビューを実装するための抽象基底クラス. 無限スクロールおよびスナップには対応していません. FancyScrollView<TItemData, TContext>.Context が不要な場合は 代わりに FancyScrollRect<TItemData> を使用します.

ScrollRect スタイルのスクロールビューを実装するための抽象基底クラス. 無限スクロールおよびスナップには対応していません.

Template Parameters
TItemDataアイテムのデータ型.
TContextFancyScrollView<TItemData, TContext>.Context の型.
Template Parameters
TItemDataアイテムのデータ型.
See also
FancyScrollRect<TItemData, TContext>

Definition at line 302 of file FancyScrollRect.cs.

Member Function Documentation

◆ AdjustCellIntervalAndScrollOffset()

void UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.AdjustCellIntervalAndScrollOffset ( )
protected

指定された設定を実現するための FancyScrollView<TItemData,TContext>.cellIntervalFancyScrollView<TItemData,TContext>.scrollOffset を計算して適用します.

Definition at line 265 of file FancyScrollRect.cs.

◆ Initialize()

override void UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.Initialize ( )
protectedvirtual

初期化を行います.

Reimplemented from UnityEngine.UI.Extensions.FancyScrollView< TItemData, TContext >.

Definition at line 81 of file FancyScrollRect.cs.

◆ JumpTo()

virtual void UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.JumpTo ( int  itemIndex,
float  alignment = 0.5f 
)
protectedvirtual

指定したアイテムの位置までジャンプします.

Parameters
itemIndexアイテムのインデックス.
alignmentビューポート内におけるセル位置の基準. 0f(先頭) ~ 1f(末尾).

Reimplemented from UnityEngine.UI.Extensions.FancyScrollRect< TItemData, FancyScrollRectContext >.

Reimplemented in UnityEngine.UI.Extensions.FancyGridView< TItemData >, and UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.

Definition at line 187 of file FancyScrollRect.cs.

◆ OnValidate()

virtual void UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.OnValidate ( )
protectedvirtual

◆ Refresh()

override void UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.Refresh ( )
protectedvirtual

セルのレイアウトと表示内容を強制的に更新します.

Reimplemented from UnityEngine.UI.Extensions.FancyScrollView< TItemData, TContext >.

Definition at line 130 of file FancyScrollRect.cs.

◆ RefreshScroller()

void UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.RefreshScroller ( )
protected

Scroller の各種状態を更新します.

Definition at line 148 of file FancyScrollRect.cs.

◆ Relayout()

override void UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.Relayout ( )
protectedvirtual

セルのレイアウトを強制的に更新します.

Reimplemented from UnityEngine.UI.Extensions.FancyScrollView< TItemData, TContext >.

Definition at line 138 of file FancyScrollRect.cs.

◆ ScrollTo() [1/2]

virtual void UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.ScrollTo ( int  index,
float  duration,
Ease  easing,
float  alignment = 0.5f,
Action  onComplete = null 
)
protectedvirtual

指定したアイテムの位置まで移動します.

Parameters
indexアイテムのインデックス.
duration移動にかける秒数.
easing移動に使用するイージング.
alignmentビューポート内におけるセル位置の基準. 0f(先頭) ~ 1f(末尾).
onComplete移動が完了した際に呼び出されるコールバック.

Definition at line 212 of file FancyScrollRect.cs.

◆ ScrollTo() [2/2]

virtual void UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.ScrollTo ( int  index,
float  duration,
float  alignment = 0.5f,
Action  onComplete = null 
)
protectedvirtual

指定したアイテムの位置まで移動します.

Parameters
indexアイテムのインデックス.
duration移動にかける秒数.
alignmentビューポート内におけるセル位置の基準. 0f(先頭) ~ 1f(末尾).
onComplete移動が完了した際に呼び出されるコールバック.

Reimplemented from UnityEngine.UI.Extensions.FancyScrollRect< TItemData, FancyScrollRectContext >.

Reimplemented in UnityEngine.UI.Extensions.FancyScrollRect< TItemData >, and UnityEngine.UI.Extensions.FancyGridView< TItemData >.

Definition at line 199 of file FancyScrollRect.cs.

◆ ToFancyScrollViewPosition()

float UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.ToFancyScrollViewPosition ( float  position)
protected

Scroller が扱うスクロール位置を FancyScrollRect<TItemData, TContext> が扱うスクロール位置に変換します.

Parameters
positionScroller が扱うスクロール位置.
Returns
FancyScrollRect<TItemData, TContext> が扱うスクロール位置.

Definition at line 232 of file FancyScrollRect.cs.

◆ ToScrollerPosition() [1/2]

float UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.ToScrollerPosition ( float  position)
protected

FancyScrollRect<TItemData, TContext> が扱うスクロール位置を Scroller が扱うスクロール位置に変換します.

Parameters
positionFancyScrollRect<TItemData, TContext> が扱うスクロール位置.
Returns
Scroller が扱うスクロール位置.

Definition at line 242 of file FancyScrollRect.cs.

◆ ToScrollerPosition() [2/2]

float UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.ToScrollerPosition ( float  position,
float  alignment = 0.5f 
)
protected

FancyScrollRect<TItemData, TContext> が扱うスクロール位置を Scroller が扱うスクロール位置に変換します.

Parameters
positionFancyScrollRect<TItemData, TContext> が扱うスクロール位置.
alignmentビューポート内におけるセル位置の基準. 0f(先頭) ~ 1f(末尾).
Returns
Scroller が扱うスクロール位置.

Definition at line 253 of file FancyScrollRect.cs.

◆ UpdateContents()

override void UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.UpdateContents ( IList< TItemData >  items)
protectedvirtual

渡されたアイテム一覧に基づいて表示内容を更新します.

Reimplemented from UnityEngine.UI.Extensions.FancyScrollView< TItemData, TContext >.

Definition at line 162 of file FancyScrollRect.cs.

◆ UpdatePosition()

new void UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.UpdatePosition ( float  position)
protectedvirtual

スクロール位置を更新します.

Parameters
positionスクロール位置.

Reimplemented from UnityEngine.UI.Extensions.FancyScrollView< TItemData, TContext >.

Definition at line 177 of file FancyScrollRect.cs.

◆ UpdateScrollbarSize()

void UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.UpdateScrollbarSize ( float  viewportLength)
protected

ビューポートとコンテンツの長さに基づいてスクロールバーのサイズを更新します.

Parameters
viewportLengthビューポートのサイズ.

Definition at line 221 of file FancyScrollRect.cs.

Member Data Documentation

◆ paddingHead

float UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.paddingHead = 0f
protected

コンテンツ先頭の余白.

Definition at line 34 of file FancyScrollRect.cs.

◆ paddingTail

float UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.paddingTail = 0f
protected

コンテンツ末尾の余白.

Definition at line 39 of file FancyScrollRect.cs.

◆ reuseCellMarginCount

float UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.reuseCellMarginCount = 0f
protected

スクロール中にセルが再利用されるまでの余白のセル数.

0 を指定するとセルが完全に隠れた直後に再利用されます. 1 以上を指定すると, そのセル数だけ余分にスクロールしてから再利用されます.

Definition at line 29 of file FancyScrollRect.cs.

◆ spacing

float UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.spacing = 0f
protected

スクロール軸方向のセル同士の余白.

Definition at line 44 of file FancyScrollRect.cs.

Property Documentation

◆ CellSize

abstract float UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.CellSize
getprotected

セルのサイズ.

Definition at line 49 of file FancyScrollRect.cs.

◆ Scrollable

virtual bool UnityEngine.UI.Extensions.FancyScrollRect< TItemData >.Scrollable
getprotected

スクロール可能かどうか.

アイテム数が十分少なくビューポート内に全てのセルが収まっている場合は false, それ以外は true になります.

Definition at line 57 of file FancyScrollRect.cs.

◆ Scroller

スクロール位置を制御する FancyScrollView.Scroller のインスタンス.

Scroller のスクロール位置を変更する際は必ず ToScrollerPosition(float) を使用して変換した位置を使用してください.

Definition at line 67 of file FancyScrollRect.cs.


The documentation for this class was generated from the following file: