1

如何从 ListView 复制文本?对于复制文本,我正在使用剪贴板管理器。但是,它不起作用。这是我的代码:

@Override
public boolean onItemLongClick(AdapterView<?> arg0, View arg1, int arg2,
        long arg3) {
    // TODO Auto-generated method stub
    String message = mMessagelist.get(arg2).getMessage_text().toString();

    if (true) {

        CLIPBOARD_TEXT = ((TextView) findViewById(R.id.message))
                .getText().toString();
        alert.showAlertDialog(MessagesActivity.this, "",
                "Your text is copied to clipboard", false);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
            android.content.ClipboardManager clipboard = (android.content.ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
            ClipData clip = ClipData.newPlainText("simple text",
                    CLIPBOARD_TEXT);
            clipboard.setPrimaryClip(clip);
        } else {
            android.text.ClipboardManager clipboard = (android.text.ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
            clipboard.setText(CLIPBOARD_TEXT);
        }

    }
    return true;
} 

当用户长按项目时,我只是显示一个弹出窗口并复制文本,但它不起作用..请帮助我。

4

2 回答 2

0

请澄清您的长按监听器不工作或复制到剪贴板不工作

复制就用这个

 ClipData myClip;
 String text = "hello world";
 myClip = ClipData.newPlainText("text", text);
 myClipboard.setPrimaryClip(myClip);
于 2014-01-24T09:13:56.363 回答
0
CLIPBOARD_TEXT = ((TextView) findViewById(R.id.message)).getText().toString();

试着把它分成几部分。

String CLIPBOARD_TEXT;
TextView tvMsg = (TextView) findViewById(R.id.message);
CLIPBOARD_TEXT = tvMsg.getText().toString();

ClipData clip = ClipData.newPlainText("simple text", CLIPBOARD_TEXT);

ClipData clip = ClipData.newPlainText(CLIPBOARD_TEXT, CLIPBOARD_TEXT);

希望有效。

于 2014-01-24T07:48:08.487 回答