android - 为所有 android api 启用复制粘贴

标签 android copy-paste clipboardmanager

我正在寻找一种从剪贴板复制和粘贴到每个 Android 版本的方法。现在,我只知道如何在 API 11+ 中执行此操作。

copy.setOnLongClickListener(new View.OnLongClickListener()
    {
        @SuppressLint({ "NewApi", "NewApi" })
        @Override
        public boolean onLongClick(View v)
        {
            clipboard = (ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE);
            clipdata = ClipData.newPlainText("simple text", copy.getText().toString());
            clipboard.setPrimaryClip(clipdata);
            Toast.makeText(getApplicationContext(), "Copied to clipboard..", Toast.LENGTH_SHORT).show();
            return true;
        }
    });

    paste.setOnLongClickListener(new View.OnLongClickListener()
    {
        @SuppressLint({ "NewApi", "NewApi" })
        @Override
        public boolean onLongClick(View v)
        {
            clipboard = (ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE);
            String pasteData = "";
            item = clipboard.getPrimaryClip().getItemAt(0);
            pasteData = item.getText().toString();
            paste.setText(pasteData);
            Toast.makeText(getApplicationContext(), "Pasted", Toast.LENGTH_SHORT).show();
            return true;
        }
    });

我会很感激任何帮助,谢谢。

最佳答案

             int sdk = android.os.Build.VERSION.SDK_INT;
            if(sdk < android.os.Build.VERSION_CODES.HONEYCOMB) {
                android.text.ClipboardManager clipboard = (android.text.ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
                clipboard.setText("text to clip"); // 
            } else {
                android.content.ClipboardManager clipboard = (android.content.ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE); 
                android.content.ClipData clip = android.content.ClipData.newPlainText("text label","text to clip");
                clipboard.setPrimaryClip(clip); // 
            }

关于android - 为所有 android api 启用复制粘贴,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15564074/

相关文章:

android - 如何为最终用户调试 Android 应用卡住但不崩溃

TinyMCE:从 Google Docs 复制粘贴

android - 如何在 Android 中将文本复制到剪贴板?

java - Android SAX XML 解析器访问外壳标签 URL 属性

android - 收到来自 esp8266 的响应时流改造意外结束

java - 为IntelliJ中的所有参数添加@NotNull注释

go - 如何在 Go 中获取剪贴板信息(复制和粘贴)

android - Android中ClipData中的 "label"参数到底是什么?

android - 如何将带有上下文的文本复制到剪贴板

android - hidraw 设置报告/发送报告不适用于 Android 6.x