我正在尝试在我的应用中上传图片,并且我想在点击上传按钮时显示一些选项。不幸的是它给了我这个错误。我不知道代码有什么问题。我从这里得到了这个Trying open a specific folder in android using intent
提前感谢!
uploadpic.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
openFolder();
}
});
}
public void openFolder()
{
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
Uri uri = Uri.parse(Environment.getExternalStorageDirectory().getPath()
+ "/Pictures/");
intent.setDataAndType(uri, "images");
startActivity(Intent.createChooser(intent, "Open folder"));
takephoto.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
dispatchTakePictureIntent();
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) {
Bundle extras = data.getExtras();
Bitmap imageBitmap = (Bitmap) extras.get("data");
profpic.setImageBitmap(imageBitmap);
}
}
static final int REQUEST_IMAGE_CAPTURE = 1;
private void dispatchTakePictureIntent() {
Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
if (takePictureIntent.resolveActivity(getPackageManager()) != null) {
startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE);
}
}
答案 0 :(得分:1)
您只希望用户选择图片,对吗?那么也许一般的文件选择器不是最适合您的需求。
快速谷歌搜索提出this(也来自SO)。似乎该解决方案仅限于SD卡上的图片。
如果您不想点击链接:
这是为了获取图片而启动intent
的方法。
Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
photoPickerIntent.setType("image/*");
startActivityForResult(photoPickerIntent, SELECT_PHOTO);
然后您需要覆盖onActivityResult()
,但这一切都在链接中描述。