Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android – 如何使用Intent.ATTACH_DATA大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试为图像实现“设置为”功能.我正在使用Intent.ATTACH_DATA,因此用户至少可以选择联系人照片和壁纸.我应该通过的额外内容让我感到困惑.如果我正确阅读文档,
Intent intent = new Intent(Intent.ACTION_ATTACH_DATA);
    intent.setType("image/*");
intent.setData(mImageCaptureUri);
        startActivity(Intent.createChooser(intent,"hey"));

应该是全部.这适用于壁纸,但使用百万像素数据,应用程序崩溃,因为无法找到任何裁剪活动.有人有一个有效的例子吗?官方图库应用程序确实设法找到camera.crop活动…

我们也欢迎您在何处找到精心设计的系统意图文档的一般提示.

解决方法

经过android源码的漫长而曲折的道路之后,我在认的gallery(gallery3d)应用程序中找到了实际的代码.我适应了我自己的应用程序,并在其他应用程序中导入时再次重写.如果你使用或欣赏这个,我要求你提出这个答案.

改编自:gallery3d source at grepcode

用法:更改第一行以匹配照片的完整路径(以/ mnt /开头).
将字符串“set_as”添加Strings.xml作为操作选择器标题.

String absolutepath = MyApplication.appRootDir + relpath;//change for your application
    Intent intent = new Intent(Intent.ACTION_ATTACH_DATA);
    MimeTypeMap map = MimeTypeMap.getSingleton();
    String ext = absolutepath.subString(absolutepath.lasTindexOf('.') + 1);
    String mimeType = map.getMimeTypeFromExtension(ext);
    Uri uri = Uri.fromFile(new File(absolutepath));
    intent.setDataAndType(uri,mimeTypE);
    intent.putExtra("mimeType",mimeTypE);
    intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
    Activity activity = (Activity) this;
    activity.startActivity(Intent.createChooser(
            intent,activity.getString(R.String.set_as)));

大佬总结

以上是大佬教程为你收集整理的android – 如何使用Intent.ATTACH_DATA全部内容,希望文章能够帮你解决android – 如何使用Intent.ATTACH_DATA所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。