using UnityEngine; 
 | 
using System.Collections; 
 | 
  
 | 
namespace EnhancedUI.EnhancedScroller 
 | 
{ 
 | 
    /// <summary> 
 | 
    /// All scripts that handle the scroller's callbacks should inherit from this interface 
 | 
    /// </summary> 
 | 
    public interface IEnhancedScrollerDelegate 
 | 
    { 
 | 
        /// <summary> 
 | 
        /// Gets the number of cells in a list of data 
 | 
        /// </summary> 
 | 
        /// <param name="scroller"></param> 
 | 
        /// <returns></returns> 
 | 
        int GetNumberOfCells(EnhancedScroller scroller);//得到Scroll里面CellVeiw的总数目 
 | 
  
 | 
        /// <summary> 
 | 
        /// Gets the size of a cell view given the index of the data set. 
 | 
        /// This allows you to have different sized cells 
 | 
        /// </summary> 
 | 
        /// <param name="scroller"></param> 
 | 
        /// <param name="dataIndex"></param> 
 | 
        /// <returns></returns> 
 | 
        float GetCellViewSize(EnhancedScroller scroller, int dataIndex);//得到某个dataIndex的size(因为有可能会存在不同的CellVeiw) 
 | 
  
 | 
        /// <summary> 
 | 
        /// 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. 
 | 
        /// </summary> 
 | 
        /// <param name="scroller"></param> 
 | 
        /// <param name="dataIndex"></param> 
 | 
        /// <param name="cellIndex"></param> 
 | 
        /// <returns></returns> 
 | 
        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(); 
 | 
    } 
 | 
} 
 |