使用Android Gallery打开图像
我需要在Android Gallery中打开特定的图像,但我尝试了一些代码,但没有成功。 这是我的代码:使用Android Gallery打开图像,android,gallery,android-gallery,Android,Gallery,Android Gallery,我需要在Android Gallery中打开特定的图像,但我尝试了一些代码,但没有成功。 这是我的代码: Intent intent = new Intent(); intent.setAction(Intent.ACTION_VIEW); intent.setDataAndType(Uri.parse( "file:///Download/screenshot.jpg"), "image/*"); startActivity(intent); Android Gallery似乎是开放的,但没
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse( "file:///Download/screenshot.jpg"), "image/*");
startActivity(intent);
Android Gallery似乎是开放的,但没有图像,它显示了一个黑屏
我正在三星Galaxy Nexus的ICS 4.0上试用我的应用程序
希望有人能帮助我
谢谢,
Víctor.使用w按钮和EditID到“btnLoadPicture”和ImageView ID到“imgView”
请使用以下命令并重试
private static int RESULT_LOAD_IMAGE = 1;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button btnLoadPicture = (Button) findViewById(R.id.buttonLoadPicture);
btnLoadPicture.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent i = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(i, RESULT_LOAD_IMAGE);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK && null != data) {
Uri selectedImage = data.getData();
String[] filePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(selectedImage,
filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String picturePath = cursor.getString(columnIndex);
cursor.close();
// String picturePath contains the path of selected Image
ImageView imageView = (ImageView) findViewById(R.id.imgView);
imageView.setImageBitmap(BitmapFactory.decodeFile(picturePath));
}
}
文件是如何到达那里的?这可能是一个权限问题,当文件被写入时,它取决于是否在写入期间设置了MODE_WORLD_READABLE标志。页面上有完整的答案。文件路径正确吗?那里不应该有SD卡吗?Uri.parse(“file://sdcard/Download/screenshot.jpg首先,谢谢各位回答我的问题。还要特别感谢SmartLemon,因为我只在路径文件中添加了“scard”,并且。。。成功了!答案就是问题的答案。。您似乎没有加载
意图。操作\u视图
要解释什么?这太简单了调用按钮“btnLoadPicture”,“i”是新的意图集操作\u PICK和.MediaStore.Images.Media.EXTERNAL\u CONTENT\u URI一旦用户选择图像,从图像库startActivityForResult()中选择图像时,将调用主活动的ActivityResult()方法方法将处理返回的结果。一旦选择图像,就会调用onActivityResult,如果触发的活动确实是图像库,则会调用用于我们之前传递的startActivityForResult()方法的结果\u加载\u图像