android点击复制功能(ClipboardManager)

1、过时的API方法xx.setText();

binding.copy.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                ClipboardManager cm = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE);//获取cm对象
                cm.setText(data.getOrderNo());//复制的文字
                ToastUtil.show(context, "复制成功");
            }
        });

2、使用新的API xx.setPrimaryClip();

 binding.recommendCopy.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                ClipboardManager cm = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE);
                cm.setPrimaryClip(ClipData.newPlainText("text", data.getOrderNo()));//text也可以是"null"
                if (cm.hasPrimaryClip()) {
                    cm.getPrimaryClip().getItemAt(0).getText();
                }
//                cm.setText(data.getOrderNo());
                ToastUtil.show(context, "复制成功");
            }
        });

注意:新方法不兼容API11以下。

猜你喜欢

转载自blog.csdn.net/Hunter2916/article/details/82702404