package cn.coderss.pulltorefresh; /** * 下拉刷新和上拉加载更多的界面接口 * * @author Li Hong * @since 2013-7-29 */ public interface ILoadingLayout { /** * 当前的状态 */ public enum State { /** * Initial state */ NONE, /** * When the UI is in a state which means that user is not interacting * with the Pull-to-Refresh function. */ RESET, /** * When the UI is being pulled by the user, but has not been pulled far * enough so that it refreshes when released. */ PULL_TO_REFRESH, /** * When the UI is being pulled by the user, and <strong>has</strong> * been pulled far enough so that it will refresh when released. */ RELEASE_TO_REFRESH, /** * When the UI is currently refreshing, caused by a pull gesture. */ REFRESHING, /** * When the UI is currently refreshing, caused by a pull gesture. */ @Deprecated LOADING, /** * No more data */ NO_MORE_DATA, } /** * 设置当前状态,派生类应该根据这个状态的变化来改变View的变化 * * @param state 状态 */ public void setState(State state); /** * 得到当前的状态 * * @return 状态 */ public State getState(); /** * 得到当前Layout的内容大小,它将作为一个刷新的临界点 * * @return 高度 */ public int getContentSize(); /** * 在拉动时调用 * * @param scale 拉动的比例 */ public void onPull(float scale); }