android 复制文本到剪贴板

作者: android00 发布时间: 2019-08-20 浏览: 3192 次 编辑

代码如下:(对应的类:android.content.ClipboardManager)

protected  void copyStr(String text){
    //获取剪贴版
    ClipboardManager clipboard = (ClipboardManager)getActivity().getSystemService(Context.CLIPBOARD_SERVICE);
    //创建ClipData对象
    //第一个参数只是一个标记,随便传入。
    //第二个参数是要复制到剪贴版的内容
    ClipData clip = ClipData.newPlainText("simple text", "要复制的内容");
    //传入clipdata对象.
    clipboard.setPrimaryClip(clip);
}

上面的代码就可以将文字放到剪贴板了,然后找个输入框“粘贴”就行啦~

注意:API 11之前,复制到系统剪贴板是cm.setText(“复制的文字”);但这句已经失效了,在API11后对,对ClipboardManager进行了升级,改成cm.setPrimaryClip(mClipData),使之可以通过(ClipData)复制文本、Uri和Intent。正如上面示例

这是老版本的代码:

protected  void copyStr(String text){
    ClipboardManager cmb = (ClipboardManager)getActivity().getSystemService(Context.CLIPBOARD_SERVICE);
    if (cmb != null) {
        cmb.setText(text);
        showToast("复制成功");
    }
}