我有以下代码:
File imageFile = new File(f.getAbsolutePath());
ContentValues values = new ContentValues(2);
values.put(MediaStore.Images.Media.MIME_TYPE, "image/png");
values.put(MediaStore.Images.Media.DATA,imageFile.getAbsolutePath());
ContentResolver theContent = getContentResolver();
Uri imageUri = theContent.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
ClipData theClip = ClipData.newUri(getContentResolver(),"image", imageUri);
android.content.ClipboardManager clipboard = (android.content.ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE);
clipboard.setPrimaryClip(theClip);
我只看到clipboard
中的路径而不是image
本身,我认为必须能够看到image
,因为当您截取屏幕截图时,您会看到剪贴板。如果你知道如何将位图传递给剪贴板,也许它只是一个位图请告诉我。
如果有人能提出解决方案,我将非常感激。
答案 0 :(得分:0)
Android剪贴板的工作方式与Mac OS PasteBoard和Windows的剪贴板略有不同。 Mac和Windows方法是物理存储图像/二进制,RTF,文件引用等内容,因此可以在系统内共享数据。 Android剪贴板只能存储文本(并且可以处理自Jelly Bean以来的HTML)。其他类型由指向实际数据的Content Provider URI表示。接收URI的应用程序的工作是检索其内容(通过ContentResolver)并相应地处理传入的数据。