Android13-图片选择器

这篇具有很好参考价值的文章主要介绍了Android13-图片选择器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在compileSDK = 33 时,谷歌在安卓新增了 图片选择器 功能,支持单选、多选、选图片、视频等操作,并且不需要额外获取照片/音频权限。

具体实现如下:

1:请求

        Log.d(TAG, "Build.VERSION.SDK_INT" + Build.VERSION.SDK_INT);
        if (Build.VERSION.SDK_INT >= 33) {
            //图片选择器单选
//            Intent intent = new Intent(MediaStore.ACTION_PICK_IMAGES);
//           在complieSDK32已废弃
//            startActivityForResult(intent,  PHOTO_PICKER_REQUEST_CODE);
            //图片选择器多选
            final int maxNumPhotosAndVideos = 3;
            Intent intent = new Intent(MediaStore.ACTION_PICK_IMAGES);
//            intent.setType("video/*");//仅选择视频
            intent.setType("image/*");//仅选择图片
            intent.putExtra(MediaStore.EXTRA_PICK_IMAGES_MAX, maxNumPhotosAndVideos);
            launcher.launch(intent);
        } else {
            //我们需要自己开发
        }

2:响应

单选

    @Override
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (resultCode == RESULT_OK) {
            if (requestCode == PHOTO_PICKER_REQUEST_CODE) {
                Uri currentUri = null;
                if (data != null) {
                    currentUri = data.getData();
                    binding.image.setImageURI(currentUri);
                }
                Log.d(TAG, "currentUri:" + currentUri);
            }
        }
    }

多选文章来源地址https://www.toymoban.com/news/detail-722021.html

        launcher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(),
                new ActivityResultCallback<ActivityResult>() {
            @Override
            public void onActivityResult(ActivityResult result) {
                if (result != null) {
                    if (result.getData() != null && result.getResultCode() == RESULT_OK) {
                        Intent intent = result.getData();
                        for (int i = 0; i < intent.getClipData().getItemCount(); i++) {
                            Uri uri = intent.getClipData().getItemAt(i).getUri();
                            Log.d(TAG, "multiple current Uri:" + uri);
                            // Do stuff with each photo/video URI.
                        }
                    }
                }
            }
        });

到了这里,关于Android13-图片选择器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android相册选择图片、相机拍照上传功能实现(上)

    先上效果图 下面就来说一下相册选择图片和相机拍照的实现 相册选择图片很简单,只需要通过 Intent 设置拉起就可以了 Intent 拉起相册 /** 打开相册 @param type 打开类型区分码(type是我用来区分回调的) / private void openGallery(int type) { Intent gallery = new Intent(Intent.ACTION_PICK); galler

    2024年04月16日
    浏览(41)
  • Android打开系统相机或从相册中选择图片并显示

    xml代码 展示  java代码 实机演示  

    2024年02月11日
    浏览(40)
  • Android 仿微信图片选择器 PictureSelector3.0 的使用

    在做项目时经常会遇到图片选着,选择单张图片还好,但类似于微信发朋友圈时可以多图选择的时候,就有点手足无措。然后在网上看了很多类似的项目,也尝试过将他们用于自己的项目,比如 知乎开源图片选择库 Matisse 等。但对比之下,PictureSelector 对我这种小白来说是更

    2024年02月09日
    浏览(32)
  • Android类似微信聊天页面教程(Kotlin)五——选择发送图片

      安装并配置好Android Studio Android Studio Electric Eel | 2022.1.1 Patch 2 Build #AI-221.6008.13.2211.9619390, built on February 17, 2023 Runtime version: 11.0.15+0-b2043.56-9505619 amd64 VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o. Windows 11 10.0 GC: G1 Young Generation, G1 Old Generation Memory: 1280M Cores: 6 Registry:     external.system.a

    2024年02月03日
    浏览(35)
  • Android权限申请、相册选择图片、拍照、获取联系人、页面跳转

    目前第一版封装了:页面启动、页面启动回调、获取通讯录联系人、获取相册图片、拍照获取图片、单条权限申请、多条权限申请,且已适配到Android 13 导入 权限申请 权限申请支持单条权限和多条权限申请,支持强制拒绝后弹窗提示用户并引导区设置也开启权限 默认强制拒

    2024年02月16日
    浏览(36)
  • Android 13添加自定义Java系统服务(一)

    欢迎加入我的知识星球Android系统开发指南 欢迎关注微信公众号 无限无羡 欢迎关注知乎账号 无限无羡 在平时的业务开发中,我们往往需要开发自定义的系统服务来处理自己特殊的需求,我们这里提供两种方式来实现。第一种是按照已有的系统服务的方法,运行在system_serve

    2024年02月10日
    浏览(36)
  • Android-图片压缩(二)- 压缩基础

    Android - 图片压缩(一)- 项目中取图片转bitmap Android - 图片压缩(二)- 压缩基础 Android - 图片压缩(三)- 剖析鲁班,借鉴参数 Android - 图片压缩(四)- 手撸压缩工具 Android - 图片压缩(五)- 推广使用,开始属于你的工具库 前言:让我们手撸一个图片压缩库,对压缩工具鲁

    2024年02月02日
    浏览(40)
  • 【自定义系统服务】【android13】添加自定义java系统服务

    在平时的业务开发中,我们往往需要开发自定义的系统服务来处理自己特殊的需求,这里介绍的是添加自定义的Java系统服务,可以在系统App中直接调用 Binder默认可以传输基本类型的数据,如果要传递类对象,则这个类需要实现序列化。我们先定义一个序列化的自定义类型,

    2024年02月12日
    浏览(30)
  • 【Android开发基础】说说模块设计(下拉刷新、图片查看、布局设计)

    描述:设计一个简单说说功能模块 需求: 1、能够下拉刷新,更新数据 2、一条说说里允许包含多张图片,图片能够放大查看 难度:初级 知识点: 1、Swiperefreshlayout 2、适配器Adapter 3、对话框Dialog 4、文字图标Icon 1、下拉刷新 思路        使用官方提供的解决方案SwipeRefre

    2024年02月08日
    浏览(27)
  • Android 安卓开发语言kotlin与Java该如何选择

            如今在Android开发中,应用层开发语言主要是Java和Kotlin,Kotlin是后来加入的,主导的语言还是Java。kotlin的加入仿佛让会kotlin语言的开发者更屌一些,其实不然。         有人说kotlin的引入是解决开发者复杂的逻辑,并且对空指针控制的比较友好,但是我们在开

    2024年02月11日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包