0

在我的应用程序中,我想将选定的数据复制到剪贴板,而不使用在 web 视图中长按文本后出现的上下文操作栏。

buttonPlay.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {


                ClipboardManager mClipboard =
                        (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);

                KeyEvent shiftPressEvent = new KeyEvent(0, 0, KeyEvent.ACTION_DOWN,
                        KeyEvent.KEYCODE_SHIFT_LEFT, 0, 0);
                shiftPressEvent.dispatch(webView1);
                if(mClipboard!=null) {
                    text = mClipboard.getText().toString();
                    //Toast.makeText(MainActivity.this, "select_text_now     "+text, LENGTH_LONG).show();

                    //***************############################################28112013
                    //online part added

                    MyTask myTask = new MyTask();
                    myTask.execute(text);

                    //#############################################################

                    return;
                }
            }
        });

如您所见,文本是从剪贴板中获取的。我想在按下此按钮时将选定的文本直接发送到剪贴板。请帮助,任何建议表示赞赏。

4

1 回答 1

0

使用这个也许它可以帮助你

private void setClipboard(String text) {
        if (android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.HONEYCOMB) {
            android.text.ClipboardManager clipboard = (android.text.ClipboardManager) getActivity().getSystemService(Context.CLIPBOARD_SERVICE);
            clipboard.setText(text);
        } else {
            android.content.ClipboardManager clipboard = (android.content.ClipboardManager) getActivity().getSystemService(Context.CLIPBOARD_SERVICE);
            android.content.ClipData clip = android.content.ClipData.newPlainText("Text : ", text);
            clipboard.setPrimaryClip(clip);
        }
    }
于 2015-11-23T11:47:05.353 回答