Android SDK - 引用手机相册应用?

4

目前,我的应用程序使用提供的小部件创建了一个基本的画廊应用程序。我需要从手机中选择一张图片。这个功能已经正常工作,但在展示方面非常不足。

我手机上有几个可以做同样事情的应用程序,但它们以某种方式使用手机中已经存在的画廊让用户选择图片。例如,FourSquare在您选择要用作您的图片时,会加载画廊并要求您选择图片。

这是怎么做到的?我在过去的几个小时里搜遍了互联网,但没有找到答案。

1个回答

5
要从标准画廊获取图像,您可以执行以下操作:
private static final int MEDIA_IMAGE_REQUEST_CODE = 203948; // This can be any unique number you like

Intent getImageFromGalleryIntent = 
  new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.INTERNAL_CONTENT_URI);
startActivityForResult(getImageFromGalleryIntent, MEDIA_IMAGE_REQUEST_CODE);

当用户选择图片后,接收图片的方法如下:

protected final void onActivityResult(final int requestCode, final int resultCode, final Intent i) {
  super.onActivityResult(requestCode, resultCode, i);
  if(resultCode == RESULT_OK) {
    switch(requestCode) {
      case MEDIA_IMAGE_REQUEST_CODE:

        // Get the chosen images Uri
        Uri imageUri = i.getData();

        // Load the bitmap data from the Uri 
        // It is probably best to do this in an AsyncTask to avoid clogging up the Main Thread
      break;
    }
  }

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接