可以自己写一个选择框,但是有时候似乎必要性不大,那就用系统自带的吧。
网上有些代码写的是打开 image/* 这类文件,这就惨了,因为很多 APP 都会打开这类文件,执行后会弹出 N 个 APP,让你选择,最致命的是这些 APP 虽然会显示图片列表,但是并不是按我们的意图返回值。
建议使用下面的代码:private void showImageDialog() {
Intent intent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, 1);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// super.onActivityResult(requestCode, resultCode, data);
if (resultCode != RESULT_OK) {
return;
}
String uri = data.getData().toString();
if (requestCode == 1) {
imageView1.setImageURI(Uri.parse(uri));
}
}
相关阅读