我是android中的webview新手。我正在开发应用程序,我想在webview中标记所选文本。
在这里,我想删除右侧菜单并更改完成菜单的文本,点击“完成”后,我想在webview中标记带颜色的文本(突出显示文本)。
有人可以有任何想法吗?
请回复。等待有价值的回复。
答案 0 :(得分:2)
我不知道如何控制选择上下文操作栏。但是你可以阻止它显示并用你自己的版本替换它。首先,创建一个扩展WebView的HighlightWebView类,并包含此覆盖:
@Override
public android.view.ActionMode startActionMode(android.view.ActionMode.Callback callback) {
// this will start a new, custom Contextual Action Mode, in which you can control
// the menu options available.
highlightActivity.startActionMode(highlighActionModeCallback);
// this is to prevent the native text selection ActionMode
return null;
}
您还需要创建HighlightActionModeCallback类。这是实现ActionMode.Callback的一个非常基本的类:
public class HighlightActionModeCallBack implements ActionMode.Callback {
@Override
public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
// TODO Auto-generated method stub
mode.getMenuInflater().inflate(R.menu.highlight_menu, menu);
return true;
}
@Override
public void onDestroyActionMode(ActionMode mode) {
// TODO Auto-generated method stub
}
@Override
public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
// TODO Auto-generated method stub
return false;
}
}
您还想要谷歌"上下文行动模式"和/或"上下文操作栏"了解更多信息。