我需要有一个将向用户显示的文本,并且可以选择它的一部分并将其复制到剪贴板。 但没有键盘打开。 我知道在api 11和更新的我可以使用
text.setTextIsSelectable (true);
但降低操作系统版本的解决方案是什么?
答案 0 :(得分:1)
使用ContextMenu
和CLIPBOARD_SERVICE
:
private TextView mTextView;
protected final void onCreate(Bundle savedInstanceState) {
...
registerForContextMenu(mTextView);
}
@Override
public void onCreateContextMenu(ContextMenu menu, View view, ContextMenu.ContextMenuInfo menuInfo) {
TextView textView = (TextView) view;
menu.setHeaderTitle(textView.getText()).add(0, 0, 0, R.string.menu_copy_to_clipboard);
}
@Override
public boolean onContextItemSelected(MenuItem item) {
((ClipboardManager) getSystemService(CLIPBOARD_SERVICE)).setText(mTextView.getText());
return true;
}
答案 1 :(得分:0)
经过漫长而耗时的搜索后,我找不到可以在textview中为android API级别&lt; = 11选择文本的组件。我写过这个可能对你有所帮助的组件: new Selectable TextView in android 3 (API <=11) component