黑马程序员技术交流社区
标题: 揭秘Android 6.0 之 Text Selection [打印本页]
作者: 柳柳桑 时间: 2015-11-24 08:37
标题: 揭秘Android 6.0 之 Text Selection
揭秘Android 6.0之Text Selection
在Android6.0Android Design 增加了Text-Selection功能,Text-Selection 提供了功能引导以及用户文本选择。下面咱们来看看怎么使用吧。
1、准备:
Android studio 开发环境
2、TextSelection文档:
>>将startActionMode(Callback)改成startActionMode(Callback,ActionMode.TYPE_FLOATING)
>>使用新的ActionMode.Callback2接口
3、新建一个Project:
首先咱们先new一个ActionMode.Callback2对象,在ActionMode.Callback2的onCreateActionMode方法使用menuInflater设置好菜单项,代码如例1-1:
例1-1
- private ActionMode.Callback2 callback2 = new ActionMode.Callback2() {
- @Override
- public boolean onCreateActionMode(ActionMode mode, Menu menu) {
- MenuInflater menuInflater = mode.getMenuInflater();
- menuInflater.inflate(R.menu.text,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) {
- }
- //控制这个浮动菜单的位置
- @Override
- public void onGetContentRect(ActionMode mode, View view, Rect outRect) {
- super.onGetContentRect(mode, view, outRect);
- }
- };
复制代码
例1-2
- <?xml version="1.0" encoding="utf-8"?>
- <menu xmlns:android="http://schemas.android.com/apk/res/android">
- <item android:title="复制" />
- <item android:title="剪切" />
- <item android:title="粘贴" />
- <group>
- <item android:title="传智播客" />
- <item android:title="Android" />
- <item android:title="黑马程序员" />
- </group>
- </menu>
复制代码
注意此处我们要把View对象的android:textIsSelectable="true" 设置为true,否则自定义ActionMode不会被调用。代码如例1-3:
例1-3
- <TextView
- android:id="@+id/tv"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:textIsSelectable="true"
- android:text="@string/str"
- android:textSize="16sp" />
复制代码
然后给View对象设置自定ActionMode。代码如列1-4:
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.text);
- TextView tv = (TextView) findViewById(R.id.tv);
- tv.setCustomSelectionActionModeCallback(callback2);
复制代码运行效果图如下(资源见附件,此处work GIF无法运行):
作者: 耀阳圣尊 时间: 2015-11-24 09:36
赞一个
作者: michael_wlq 时间: 2015-11-24 12:03
赞一个吧!!
作者: 2880137973 时间: 2015-11-24 13:22
最佩服明明可以靠颜值吃饭,却偏偏要靠才华的妹子!
作者: 草上飞f 时间: 2015-11-24 15:55
大赞!!!!
作者: HI耀玮 时间: 2015-11-24 18:20
进来看看好牛逼
作者: a784161433 时间: 2015-11-24 21:23
完全看不懂啊
作者: a784161433 时间: 2015-11-24 21:24
完全看不懂啊
作者: 听你说 时间: 2015-11-24 21:58
赞赞,不是因为有了希望才坚持,而是因为坚持才有了希望! 2、不是因为有了机会才争取,而是因为争取了有机会。。。。。。
作者: 董棁 时间: 2015-11-25 08:07
赞一个~~~~~
作者: 845479430 时间: 2015-11-25 09:03
学姐,你上班了吗?、
作者: momoxixi 时间: 2015-11-25 09:28
什么时候给我安排面试啊。。。
作者: Camwly 时间: 2015-11-25 09:29
看不懂啊
作者: 王广彬 时间: 2015-11-25 10:09
赞一个,功能很实用哦
作者: Rocky_zhang 时间: 2015-11-25 22:18
安卓的更新很快,都到6了。要继续学习才能跟上步伐。努力
作者: dooorkeeeper 时间: 2015-11-28 19:31
确实应该!
作者: 草上飞f 时间: 2015-11-29 00:04
大赞!!!!!!!
作者: 陈同英 时间: 2015-11-30 20:34
加油。。。。。。。
作者: 尼玛大叔 时间: 2015-12-1 12:09
看不懂,赞一个
作者: 尼玛大叔 时间: 2015-12-4 09:34
赞一个!!
作者: 雨与雨伞 时间: 2015-12-4 23:49
好高大上啊!
作者: 667784 时间: 2015-12-5 16:52
不是因为有了希望才坚持,而是因为坚持才有了希望!
作者: 墨客110 时间: 2015-12-5 20:28
很有用的东西啊
作者: 雨与雨伞 时间: 2015-12-9 00:06
666666666666666666666666666666666666666666666666
作者: chenxunlei 时间: 2015-12-9 19:36
赞赞赞赞赞
作者: Star_FDt78 时间: 2015-12-9 23:12
黑马是我们的云梯,通天的云梯
作者: hmgui7219 时间: 2015-12-16 19:43
总结得很经典
作者: 韦丹艳58 时间: 2016-1-9 22:09
么么哒!!!!!!!!!!!!!!!!!!!!!!!!!!!!
作者: shihao 时间: 2016-1-23 17:00
看不懂,赞一个
作者: zx7660 时间: 2016-3-21 08:50
赞一个.....
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |