using UnityEngine;
using System.Collections;
namespace EnhancedUI.EnhancedScroller
{
///
/// All scripts that handle the scroller's callbacks should inherit from this interface
///
public interface IEnhancedScrollerDelegate
{
///
/// Gets the number of cells in a list of data
///
///
///
int GetNumberOfCells(EnhancedScroller scroller);//得到Scroll里面CellVeiw的总数目
///
/// Gets the size of a cell view given the index of the data set.
/// This allows you to have different sized cells
///
///
///
///
float GetCellViewSize(EnhancedScroller scroller, int dataIndex);//得到某个dataIndex的size(因为有可能会存在不同的CellVeiw)
///
/// Gets the cell view that should be used for the data index. Your implementation
/// of this function should request a new cell from the scroller so that it can
/// properly recycle old cells.
///
///
///
///
///
EnhancedScrollerCellView GetCellView(EnhancedScroller scroller, int dataIndex, int cellIndex);
/*
* 用于得到(或从循环集合中取,或实例化)一个CellView并取其CellView对象
注意这里返回的是CellView的父类型,CellVeiw是要自己来写的,这样就可以通过重写父类的虚方法实现多态
*/
/*要想使用这个插件,需要我们添加两个类,
* 1)一个类继承自EnHancedScrollerCellView,用于保存单个CellView的相关信息
* 2)另一个类实现这个接口,用于控制整个Scroll,并提供给外界一些相关信息(总的CellView数目,每个CellView的size等)
* 其中,GetCellView()方法在实现的时候直接调用 EnhancedScroller类中的GetCellView()方法来进行实现就可以了
* 这两个类也可根据自己的需要进行扩展
*/
void OnRebuildComplete();
}
}