我想提供剪切、复制文本的自定义处理程序。
长按目标
- 上下文菜单不应出现。
- 可以使用跟踪器(或拖动器)选择文本。
[UPDATE]
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
edittext = (EditText) findViewById(R.id.notetext);
. . . .
edittext.setCustomSelectionActionModeCallback(new ActionMode.Callback()
{
public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
return false;
}
public void onDestroyActionMode(ActionMode mode) {
}
public boolean onCreateActionMode(ActionMode mode, Menu menu)
{
return true;
}
public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
return false;
}
});
. . . .
}
@Override
public void onSupportActionModeStarted(android.support.v7.view.ActionMode mode) {
super.onSupportActionModeStarted(mode);
View v = new View(MainActivity.this);
mode.setCustomView(v);
mode.getMenu().clear();
mode.getMenu().close();
mode.finish();
}
使用上面的代码我可以删除全选、剪切、复制和粘贴。但它仍然显示“文本选择”
下图显示了所需内容。
你想摆脱 ActionMode 吗?并创建你自己的?
您可以覆盖此设置并在即将显示默认值时收到通知
@Override
public void onSupportActionModeStarted(ActionMode mode) {
super.onSupportActionModeStarted(mode);
//you can add your custom ui here
mode.setCustomView(....);// it takes a view
}
如果你想关闭它然后你打电话mode.finish();
如果您不需要它,您可以在那里调用它以关闭或完成它。
当它即将死亡时,它会调用此 onSupportActionModeFinished(ActionMode mode)` 我所说的方法适用于支持库,希望您知道这一点。
剩下的就是奶酪了
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)