Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/203.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在android textview中选择单词_Android_Textview - Fatal编程技术网

如何在android textview中选择单词

如何在android textview中选择单词,android,textview,Android,Textview,在以下情况下,如何获取textview中特定单词的确切值: 1-用户录制了单词(单词可能只是某个文本块中多个单词中的一个), 2-textview在其xml布局中有一个名称:android:textIsSelectable=“true”, 因此,默认情况下,android允许用户突出显示特定单词 并打开一个小菜单(复制、粘贴、共享)。我是否可以操纵此菜单,或者向其添加更多选项以扩展它,并对突出显示的单词执行我想要的操作 我需要根据与用户的一些交互来获得确切的单词(单击、轻触、选择……) 我没有找

在以下情况下,如何获取textview中特定单词的确切值: 1-用户录制了单词(单词可能只是某个文本块中多个单词中的一个), 2-textview在其xml布局中有一个名称:android:textIsSelectable=“true”, 因此,默认情况下,android允许用户突出显示特定单词 并打开一个小菜单(复制、粘贴、共享)。我是否可以操纵此菜单,或者向其添加更多选项以扩展它,并对突出显示的单词执行我想要的操作

我需要根据与用户的一些交互来获得确切的单词(单击、轻触、选择……)

我没有找到任何直截了当的答案。有可能吗

(我有安卓htc one x)


谢谢。

一个更适合您的场景的组件是
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());