【问题标题】:Get the name of image获取图片名称
【发布时间】:2018-05-16 12:34:20
【问题描述】:

我正在使用此代码:

图像选择器

select.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent();
            intent.setType("image/*");
            intent.setAction(Intent.ACTION_GET_CONTENT);
            startActivityForResult(Intent.createChooser(intent,"Select Picture"),REQUEST_CODE);
        }
    });

在 imageview 中显示图像:

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if(requestCode==REQUEST_CODE && resultCode==RESULT_OK && data !=null && data.getData() != null)
    {
        Uri uri=data.getData();
        try{
            Bitmap bitmap = MediaStore.Images.Media.getBitmap(getContentResolver(),uri);

            image.setImageBitmap(bitmap);

        }
        catch(IOException e)
        {
            e.printStackTrace();
        }
    }
}

但我想获取所选图像的名称,并将其发送到另一个活动,请问我该怎么做?

【问题讨论】:

标签: android


【解决方案1】:

MediaStore.Images.Media.DATA 将返回图像的真实路径,看看这个

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if(requestCode==REQUEST_CODE && resultCode==RESULT_OK && data !=null && data.getData() != null)
    {
        Uri uri=data.getData();
        String s = getRealPathFromURI(uri);
        try{
            Bitmap bitmap = MediaStore.Images.Media.getBitmap(getContentResolver(),uri);

            image.setImageBitmap(bitmap);

        }
        catch(IOException e)
        {
            e.printStackTrace();
        }
    }
}

public String getRealPathFromURI(Uri uri) {
    String[] projection = { MediaStore.Images.Media.DATA };
    @SuppressWarnings("deprecation")
    Cursor cursor = managedQuery(uri, projection, null, null, null);
    int column_index = cursor
            .getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
    cursor.moveToFirst();
    return cursor.getString(column_index);
}

希望对你有帮助!!

【讨论】:

  • 当我把它转移到另一个活动时,什么都没有显示
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-01-04
  • 2012-04-04
  • 2012-09-02
  • 2015-10-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多