You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

API.md 4.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197
  1. #### MyActivity
  2. > 所有的 Activity 必须继承至 MyActivity,如果使用 MVP 请继承至 MvpActivity,已经处理了 Activity 多重启动的问题,[详情可点击此处查看](https://www.jianshu.com/p/579f1f118161)
  3. > 获取 Context 或者 Activity
  4. public Context getContext()
  5. public <A extends BaseActivity> A getActivity()
  6. > startActivity 方法优化
  7. public void startActivity(Class<? extends Activity> cls)
  8. public void startActivityFinish(Class<? extends Activity> cls)
  9. public void startActivityFinish(Intent intent)
  10. > startActivityForResult 方法优化
  11. public void startActivityForResult(Intent intent, ActivityCallback callback)
  12. public void startActivityForResult(Intent intent, @Nullable Bundle options, ActivityCallback callback)
  13. > setResult 方法优化
  14. public void finishResult(int resultCode)
  15. public void finishResult(int resultCode, Intent data)
  16. > Activity 标题
  17. public void setTitle(int titleId)
  18. public void setTitle(CharSequence title)
  19. public CharSequence getTitle()
  20. > Toast 方法
  21. public void toast(CharSequence s)
  22. public void toast(int id)
  23. public void toast(Object object)
  24. > Handler 方法
  25. public static Handler getHandler()
  26. > TitleBar 方法
  27. public TitleBar getTitleBar()
  28. > TitleBar 监听方法(需要被重写)
  29. // 标题栏左项被点击了,默认返回
  30. public void onLeftClick(View v)
  31. // 标题栏中间项被点击了
  32. public void onTitleClick(View v)
  33. // 标题栏右项被点击了
  34. public void onRightClick(View v)
  35. #### MyFragment
  36. > 获取Activity,防止出现 getActivity() 为空
  37. public FragmentActivity getFragmentActivity()
  38. > 是否进行了懒加载
  39. protected boolean isLazyLoad()
  40. > 当前 Fragment 是否可见
  41. public boolean isFragmentVisible()
  42. > 跟 Activity 的同名方法效果一样
  43. protected void onRestart()
  44. > 根据资源 id 获取一个 View 对象
  45. protected <T extends View> T findViewById(@IdRes int id)
  46. protected <T extends View> T findActivityViewById(@IdRes int id)
  47. > 跳转到其他Activity
  48. public void startActivity(Class<? extends Activity> cls)
  49. > 销毁当前 Fragment 所在的 Activity
  50. public void finish()
  51. > 获取系统服务
  52. public Object getSystemService(@NonNull String name)
  53. > Fragment返回键被按下时回调(只做预留方法,没有效果)
  54. public boolean onKeyDown(int keyCode, KeyEvent event)
  55. > Toast 方法
  56. public void toast(CharSequence s)
  57. public void toast(int id)
  58. public void toast(Object object)
  59. ##### MyRecyclerViewAdapter
  60. > 获取 RecyclerView 或者 Context
  61. public RecyclerView getRecyclerView()
  62. public Context getContext()
  63. > 布局摆放器(可以被重载,由于 RecyclerView 不能没有设置 LayoutManager,这里设置了默认的)
  64. protected RecyclerView.LayoutManager getDefaultLayoutManager(Context context) {
  65. return new LinearLayoutManager(context);
  66. }
  67. > 分页逻辑预留方法
  68. public int getPageNumber()
  69. public void setPageNumber(int pageNumber)
  70. public boolean isLastPage()
  71. public void setLastPage(boolean lastPage)
  72. > 标记方法
  73. public Object getTag()
  74. public void setTag(Object tag)
  75. > 操作数据集合
  76. public void setData(List<T> data)
  77. public List<T> getData()
  78. public void addData(List<T> data)
  79. public void clearData()
  80. > 操作单个数据
  81. public T getItem(int position)
  82. public void setItem(int position, T item)
  83. public void addItem(T item)
  84. public void addItem(int position, T item)
  85. public void removeItem(T item)
  86. public void removeItem(int position)
  87. > MyRecyclerViewAdapter.ViewHolder 方法
  88. public final View getItemView()
  89. public final <V extends View> V findViewById(@IdRes int viewId)
  90. public final ViewHolder setText(@IdRes int viewId, @StringRes int resId)
  91. public final ViewHolder setText(@IdRes int viewId, String text)
  92. public final ViewHolder setVisibility(@IdRes int viewId, int visibility)
  93. public final ViewHolder setColor(@IdRes int viewId, @ColorInt int color)
  94. public final ViewHolder setImage(@IdRes int viewId, @DrawableRes int resId)
  95. > 监听方法(必须在 RecyclerView.setAdapter 之前调用)
  96. public void setOnItemClickListener(OnItemClickListener l)
  97. public void setOnChildClickListener(@IdRes int childId, OnChildClickListener l)
  98. public void setOnItemLongClickListener(OnItemLongClickListener l)
  99. public void setOnChildLongClickListener(@IdRes int childId, OnChildLongClickListener l)
  100. public void setOnScrollingListener(OnScrollingListener l)
  101. > MyListViewAdapter 和 MyRecyclerViewAdapter 差不多,只不过没有上面这些监听方法,因为 ListView 本身已经自带这些了