我不能讓我的ImageViews從任一URI或文件路徑更新填充 - 他們只是不顯示圖像ImageView的不是從文件路徑
意圖捕捉圖像:
Intent photo = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(photo, 1);
在ActivityResult
protected void onActivityResult(int requestCode, int resultCode, Intent data){
super.onActivityResult(requestCode, resultCode, data);
Uri imageUri = data.getData();
filePath = getRealPathFromURI(this, imageUri);
}
GetRealPathFromURI類:
public String getRealPathFromURI(Context context, Uri contentUri) {
Cursor cursor = null;
try {
String[] proj = { MediaStore.Images.Media.DATA };
cursor = context.getContentResolver().query(contentUri, proj, null, null, null);
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
} finally {
if (cursor != null) {
cursor.close();
}
}
}
然後它插入到一個數據庫
從數據庫中檢索和更新ImageViews
imgfilepath[y] = cursorc.getString(cursorc.getColumnIndex("IMAGE"));
imgFile[y] = new File(imgfilepath[y]);
Uri uri = Uri.fromFile(imgFile[y]);
String path = uri.getPath();
mImage.setImageURI(uri);
「文件路徑」從onActivityResult我已經嘗試了許多不同的方法來setImageBitmap等,這都沒有奏效(我無法記住所有這些) - 任何人都可以看到爲什麼這不顯示圖像?
圖像存儲在模擬存儲器中,而不是SD卡。
編輯:
我添加EXTRA_OUTPUT標籤,但我不能看到DDMS圖像的任何地方&相機確實拍照/接受圖像
Intent photo = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
final File root = new File(Environment.getExternalStorageDirectory() + File.separator + "MyDir" + File.separator);
root.mkdirs();
final String fname = "img_"+ System.currentTimeMillis() + ".jpg";
final File sdImageMainDirectory = new File(root, fname);
mImageUri = Uri.fromFile(sdImageMainDirectory);
photo.putExtra(MediaStore.EXTRA_OUTPUT, mImageUri);
startActivityForResult(photo, 1);
因爲我已經實現了EXTRA_OUTPUT,所以凸輪時代不允許我確認圖片,只取消或重拍。勾號圖標在那裏,但不會做任何事情 – RJH94
@ RJH94:當用'ACTION_IMAGE_CAPTURE'啓動時,相機應用程序不允許用戶確認圖片。 – CommonsWare
我會用我的新代碼更新問題,它似乎沒有返回圖像,我無法在DDMS – RJH94