如何在android textview中选择单词
在以下情况下,如何获取textview中特定单词的确切值: 1-用户录制了单词(单词可能只是某个文本块中多个单词中的一个), 2-textview在其xml布局中有一个名称:android:textIsSelectable=“true”, 因此,默认情况下,android允许用户突出显示特定单词 并打开一个小菜单(复制、粘贴、共享)。我是否可以操纵此菜单,或者向其添加更多选项以扩展它,并对突出显示的单词执行我想要的操作 我需要根据与用户的一些交互来获得确切的单词(单击、轻触、选择……) 我没有找到任何直截了当的答案。有可能吗 (我有安卓htc one x)如何在android textview中选择单词,android,textview,Android,Textview,在以下情况下,如何获取textview中特定单词的确切值: 1-用户录制了单词(单词可能只是某个文本块中多个单词中的一个), 2-textview在其xml布局中有一个名称:android:textIsSelectable=“true”, 因此,默认情况下,android允许用户突出显示特定单词 并打开一个小菜单(复制、粘贴、共享)。我是否可以操纵此菜单,或者向其添加更多选项以扩展它,并对突出显示的单词执行我想要的操作 我需要根据与用户的一些交互来获得确切的单词(单击、轻触、选择……) 我没有找
谢谢。一个更适合您的场景的组件是
EditText
在清单文件中声明如下:
<EditText
android:text=" This is not an editable EditText"
android:id="@+id/EditText01"
android:layout_width="wrap_content"
android:textColor = "@android:color/white"
android:editable = "false"
android:cursorVisible="false"
android:layout_height="wrap_content"
android:background = "@android:drawable/dark_header">
</EditText>
这里,我们假设文本是从左到右选择的。如果是从右向左选择的,则上面的操作将导致异常,因此您可以通过检查开始位置是否高于结束位置来避免该异常
EditText et = (EditText)findViewById(R.id.title);
String selectedText = et.getText().substring(et.getSelectionStart(), et.getSelectionEnd());