Android 选择用于复制文本的文本
我想在EditText中选择一些文本,EditText是ListView的子元素。必须在剪贴板上设置所选文本。我找不到这方面的任何例子。我该怎么做?selectionStart和selectionEnd不适用于此。Android 选择用于复制文本的文本,android,android-layout,android-widget,Android,Android Layout,Android Widget,我想在EditText中选择一些文本,EditText是ListView的子元素。必须在剪贴板上设置所选文本。我找不到这方面的任何例子。我该怎么做?selectionStart和selectionEnd不适用于此。 谢谢。EditText已经在长按时提供了此功能……意味着长按EditText,它会弹出上下文菜单,询问全选、全选、全选。在列表选择事件中使用此代码 ClipboardManager剪贴板=(ClipboardManager)getSystemService(剪贴板_服务);clipb
谢谢。EditText已经在长按时提供了此功能……意味着长按EditText,它会弹出上下文菜单,询问全选、全选、全选。在列表选择事件中使用此代码
ClipboardManager剪贴板=(ClipboardManager)getSystemService(剪贴板_服务);clipboard.setText(txedit.getText().toString())代码>您可以在ListView自定义适配器的editText长单击事件上打开一个对话框,并在其中显示两个选项“复制并粘贴”
您可以使用
ClipboardManager clipboard =
(ClipboardManager) c1.getSystemService(c1.CLIPBOARD_SERVICE);
clipboard.setText("Text to copy");
并使用
System.out.println(clipboard.getText());
这是可能的解决办法。在listview的getView方法中执行以下操作:
enter code here:
public View getView(final int position, View convertView, ViewGroup parent) {
// A ViewHolder keeps references to children views to avoid unneccessary calls
// to findViewById() on each row.
final ViewHolder holder;
if (convertView == null) {
convertView = mInflater.inflate(R.layout.main, null);
// Creates a ViewHolder and store references to the two children views
// we want to bind data to.
holder = new ViewHolder();
holder.subText = (TextView) convertView.findViewById(R.id.subTxt);
convertView.setTag(holder);
} else {
// Get the ViewHolder back to get fast access to the TextView
// and the ImageView.
holder = (ViewHolder) convertView.getTag();
}
//TEXT BOX position is 0 then
if(position == 0) {
ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE); clipboard.setText(txtEdit.getText().toString());
}
return convertView;
}
使用ExtractedText提供的api请尝试在listview中这样做,然后我们可以稍后讨论。抱歉,我的错误是在listview中没有看到相同的内容。现在我也想知道怎么做。你可以试试这个,它不会起作用的。我已经尝试了所有可能的方法。但它似乎不起作用。android中存在列表焦点问题。它总是混淆子元素和父元素。你不明白这个问题吗。Listview的子元素有问题。很抱歉,没有太多的时间来编写您的问题所需的内容,所以几分钟的搜索为我提供了此链接,这可能会对您有所帮助。如果你已经试过了,我很抱歉。我在评论中明确表示没有时间。不要听写太多。这里的问题是你们的,社区正在努力帮助你们。不要以为社区会为你写下一切。如果链接无效,您可以忽略。你的每一个回答都是口述,这不好。嘿,我什么都不是口述。我正在努力防止社区收到垃圾答案。别误会我!
InputConnection ic = getCurrentInputConnection();
ExtractedText extracted = ic.getExtractedText(
new ExtractedTextRequest(), 0);
/*If selection start and end are not equal then selected text
* needs to be deleted and updated to core*/
if (extracted!= null && extracted.selectionStart != extracted.selectionEnd) {
}