1.论述
ActionMode实质上是一个呼出式菜单(菜单实现有ActionBar、ToolBar、ContextMenu、OptionMenu、PopupMenu、PopupWindow 等等。)
2.结构
1.ActionMode 抽象类 (先不要管)
2.ActionMode.CallBack抽象接口
生命周期方法:
onCreateActionMode(ActionMode mode, Menu menu) 这里注意: 需要我们用menuInfalte加载一个menu上去就像ActionBar
onPrepareActionMode
onActionItemClicked 注意: 如果我们在配置menu 时使用 像android:actionLayout="@layout/button_layout" 这个layout上的button点击是不触发该方法的
onDestroyActionMode
3.使用 先实例 ActionMode.CallBack对象(给menu给事件处理等),然后在合适的时候(例如当我们点击一个button或者长按等时候随用户爱好定义)调用Activity的startActionMode(CallBack callback)方法 开启 一个ActionMode(ActionMode不是由我们实例化的);
关闭ActionMode: 在CallBack的生命周期时,各个周期方法会有个Mode参数,就是ActionMode本身,此时我们在合适的时候调用mode的finish();
4.来个动态图爽一下