textView.setTextIsSelectable(true);
需要最低API级别11。
无论如何从API等级8+支持它吗?
答案 0 :(得分:2)
答案 1 :(得分:1)
通过扩展TextView类并覆盖setTextIsSelectable
来创建一个新类 @SuppressLint("NewApi")
public void setTextIsSelectable(boolean selectable) {
if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.HONEYCOMB)
super.setTextIsSelectable(true);
else
{
super.setLongClickable(true);
super.setOnLongClickListener(getSelectableLongClick());
super.setOnTouchListener(getSelectableOnTouch());
}
}
答案 2 :(得分:1)
我正在使用带有属性的EditText:
android:inputType="none"
android:background="@null"
在代码中执行此操作:
editText.setKeyListener(null);
这使得EditText不可编辑,但仍具有选择和复制功能。唯一的缺点是当窗口小部件被聚焦时可见光标。我无法将android:cursorVisible
设置为false
,因为它会将选择背景与光标一起隐藏。