现在的位置: 首页 > 综合 > 正文

Code Fragment-对于一些状态性接口,应该有不同的阶段

2013年08月23日 ⁄ 综合 ⁄ 共 893字 ⁄ 字号 评论关闭

对于一些接口,我们应该有一些不同的状态。

  • 应该有一些开始性抽象方法,如startXXX。
  • 应该有一些结束性的抽象方法,如finishXXX
  • 一些特别的事件,应该有一些回调,如updateXXX
  • 对于不同性质的东西,可以提供不同的bind方法

例子:在Launcher里,加载应用程序的信息,提供了如下的接口:

public interface Callbacks {
    public boolean setLoadOnResume();
    public int getCurrentWorkspaceScreen();
    public void startBinding();//开始绑定的抽象方法
    public void bindItems(ArrayList<ItemInfo> shortcuts, int start, int end);//对于不同性质的东西,可以提供不同的bind方法
    public void bindFolders(HashMap<Long,FolderInfo> folders);//对于不同性质的东西,可以提供不同的bind方法
    public void finishBindingItems();//绑定结束的抽象方法
    public void bindAppWidget(LauncherAppWidgetInfo info);
    public void bindAllApplications(ArrayList<ApplicationInfo> apps);
    public void bindAppsAdded(ArrayList<ApplicationInfo> apps);
    public void bindAppsUpdated(ArrayList<ApplicationInfo> apps);
    public void bindAppsRemoved(ArrayList<ApplicationInfo> apps, boolean permanent);
    public void bindPackagesUpdated();
    public boolean isAllAppsVisible();
    public void bindSearchablesChanged();
}

抱歉!评论已关闭.