【问题标题】:let user select an image from the drawable folder让用户从可绘制文件夹中选择图像
【发布时间】:2021-11-30 18:40:10
【问题描述】:

我想从我的 android studio 可绘制文件夹中选择图像,现在我在其中有 2 个图像,分别命名为 example.jpg 和 sue.PNG。 我将一个数组定义为

int image[] = {R.drawable.example, R.drawable.sue};

我应该如何进一步将它们作为图库打开并让用户从中选择一个? (如下图第二张)

【问题讨论】:

  • 打开一个带有GridView 的新Activity,并从drawable 中扩充您拥有的图像列表。使用registerForActivityResult处理用户选中图片的回调
  • 你能帮忙举个例子吗? " 从 drawable 中扩充您拥有的图像列表"
  • 我已经解释了这个过程并提供了你第二个问题的链接,你可以检查一下 - stackoverflow.com/questions/69536760/…

标签: android gallery


【解决方案1】:

试试这个。在您的按钮上单击

打开意图

public void imageChooser() {
    // Gallery Intent
    Intent galleryIntent = new Intent();
    galleryIntent.setType("image/*");
    galleryIntent.setAction(Intent.ACTION_GET_CONTENT);
    startActivityForResult(Intent.createChooser(galleryIntent , "Select Picture"), 200);
}

处理图片结果

public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
  
    if (resultCode == RESULT_OK) {
        if (requestCode == 200) {
            // Get the uri 
            Uri selectedImageUri = data.getData();
            if (null != selectedImageUri) {
                // update your imageview 
                yourimageview.setImageURI(selectedImageUri);
            }
        }
    }
}

【讨论】:

  • 我进入画廊时没有图片可供选择,你知道为什么吗?
  • 请说明您面临的问题。上面的代码将帮助您选择图像并显示在您的图像视图中。
  • sry,实际上它打开了画廊,但这个画廊不是只能绘制的,它是一个“最近”画廊,其中还包括设备上的其他图像,我应该如何修复它?顺便说一下,我选了新图后,还是原图出现
  • 好的。创建一个活动并在 xml 中放置一个网格视图。在此活动中从 raw 文件夹中绘制所有图像。这里只有原始文件夹中的图像,用户可以选择图像。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-05-31
  • 1970-01-01
  • 1970-01-01
  • 2011-04-08
  • 1970-01-01
  • 1970-01-01
  • 2013-08-31
相关资源
最近更新 更多