在我运行Android 4.1.2的Samsung Tab 3上,多个副本到剪贴板会生成一个包含每个副本的剪贴板。这是通过上滑键盘紧密底部的按钮看到的。
我想以编程方式删除所有这些副本,但是,ClipboardManager似乎没有提供执行此操作的方法。如何删除已复制到剪贴板的所有内容?
谢谢,
克里斯
ClipboardManager clipService=(ClipboardManager)active. getSystemService(Context.CLIPBOARD_SERVICE);
ClipData clipData=ClipData.newPlainText("", "");
clipService.setPrimaryClip(clipData);
我认为你不能。听起来三星已经编写了一个剪贴板扩展器,可以监控剪贴板事件并保留所有内容的副本。
如果(用户)不通过UI与历史列表交互,就无法访问历史记录。
一种可能的解决方法:如果历史列表是有限/回收的(即限制在10个新项目覆盖旧项目),那么你可以通过重复发送空白字符串(或无害的非重复字符串,如“empty1”、“empty2”等)来有效地擦除它。)无论你做什么,你最终都会覆盖用户认为重要的东西,用户会讨厌你。
从API28
ClipboardManager mCbm = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
mCbm.clearPrimaryClip()