Android Toolbar使用ActionMode
来源:互联网 发布:网络转换器辐射大吗 编辑:程序博客网 时间:2024/05/20 05:29
Toolbar使用ActionMode
- Toolbar使用ActionMode
- 基本情况
- 设置Style
- Java
- 总结
- 谢谢
基本情况
ActionMode 其实是一种菜单方式,从Android3.0之后出现,可以通过AppCompat兼容老版本。
Android5.0之后的MD设计,使用了Toolbar代替了ActionBar,如何在使用Toolbar的时候,能够适配ActionMode
设置Style
<style name="AppTheme" parent="AppTheme.Parent"> <!-- Customize theme here. --></style><style name="AppTheme.Parent" parent="Theme.AppCompat"> <item name="windowActionModeOverlay">true</item> <item name="windowActionBarOverlay">true</item> <item name="windowNoTitle">true</item> <item name="windowActionBar">false</item></style>
以上的 <item name="windowActionModeOverlay">true</item>
其实是为了能够让ActionMode能够覆盖我们的Toolbar,否则会出现ActionMode将Toolbar顶下去的样子(重复出现):
当然,也有可能出现ActionMode和Toolbar的颜色不同,或者高度不一致的问题:
再次修改style,最终的 style.xml:
<style name="AppTheme" parent="AppTheme.Parent"> <!-- Customize theme here. --> <item name="actionModeStyle">@style/CustomActionMode</item></style><style name="AppTheme.Parent" parent="Theme.AppCompat"> <item name="windowActionModeOverlay">true</item> <item name="windowActionBarOverlay">true</item> <item name="windowNoTitle">true</item> <item name="windowActionBar">false</item></style><style name="CustomActionMode" parent="@style/Widget.AppCompat.ActionMode"> <item name="background">@color/primary_color</item> <item name="height">64dp</item></style>
Java
注意:
ActionMode.Callback
接口使用android.support.v7.view.ActionMode 而不是 android.view.ActionMode- Activity需要继承AppCompatActivity
- 通过startSupportActionMode启动ActionMode而不是startActionMode
private ActionMode.Callback mCallback = new ActionMode.Callback() { @Override public boolean onCreateActionMode(ActionMode mode, Menu menu) { mode.setTitle("This is Title"); mode.setSubtitle("This is SubTitle"); getMenuInflater().inflate(R.menu.menu_item_callback, menu); return true; } @Override public boolean onPrepareActionMode(ActionMode mode, Menu menu) { return false; } @Override public boolean onActionItemClicked(ActionMode mode, MenuItem item) { return false; } @Override public void onDestroyActionMode(ActionMode mode) { }};...startSupportActionMode(mCallback);
总结
其实Toolbar适配ActionMode最重要的是:设置正确的style,对于有自己的设计需求,修改CustomActionMode便可。
谢谢
0 0
- Android Toolbar使用ActionMode
- Android Toolbar使用ActionMode
- Activity+Toolbar+ActionMode
- ActionMode 和 ToolBar
- Android UI学习笔记 之 ActionMode不能覆盖Toolbar解决方案
- 工作笔记--ActionMode配合ToolBar
- Android ActionMode.Callback
- Android Activity ActionMode Callback
- [Android]聊聊ActionMode
- ActionMode的简单使用
- Android-Toolbar 使用
- Android --Toolbar的使用
- android Toolbar使用
- android toolbar的使用
- Android Fragment使用Toolbar
- Android ToolBar 基本使用
- [Android]ToolBar使用心得
- Android:ToolBar使用
- M2_PERO
- LeetCode 4. Median of Two Sorted Arrays
- maven之间不能查看源码 the jar file M2_REPO has no source attachment
- Python Multinomial Logistics 实现MNIST分类
- 一致性哈希算法
- Android Toolbar使用ActionMode
- C++第一次上机报告 1-2
- scala学习之路:6.Map,Tuple,zip操作
- JAVA内置数据结构概述
- 浅谈ThreadLocal
- 前缀异或:XOR Segment (用的是前缀和的思想,所以暂且称这个方法为前缀异或)
- 欢迎使用CSDN-markdown编辑器
- SPRING循环依赖(circular reference)的解决方法
- 关于java开发技巧