カスタムしていますListview
。中にはButton
と がありImageView
ます。
ボタンをクリックすると、カメラが開きます(カメラインテントが起動されます)。
ImageView
ListItem もあるキャプチャされた Image (Bitmap とも呼ばれます)が必要です。
つまり、画像をキャプチャしてカメラの [完了] ボタンを押すと、imageview でその画像を設定する必要があります。
これどうやってするの?
カスタムしていますListview
。中にはButton
と がありImageView
ます。
ボタンをクリックすると、カメラが開きます(カメラインテントが起動されます)。
ImageView
ListItem もあるキャプチャされた Image (Bitmap とも呼ばれます)が必要です。
つまり、画像をキャプチャしてカメラの [完了] ボタンを押すと、imageview でその画像を設定する必要があります。
これどうやってするの?
以下の手順に従ってください。
onActivityResult
あなたの活動への画像制御コールバックをキャプチャした後。 private static int FILE_SELECT_CODE_1 = 0;
function intentCamera(){
Intent i = new Intent(
android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(i, FILE_SELECT_CODE_1);
}
private String getLastImagePath() {
final String[] imageColumns = { MediaStore.Images.Media._ID,
MediaStore.Images.Media.DATA };
final String imageOrderBy = MediaStore.Images.Media._ID + " DESC";
Cursor imageCursor = managedQuery(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI, imageColumns,
null, null, imageOrderBy);
if (imageCursor.moveToFirst()) {
//int id = imageCursor.getInt(imageCursor.getColumnIndex(MediaStore.Images.Media._ID));
String fullPath = imageCursor.getString(imageCursor
.getColumnIndex(MediaStore.Images.Media.DATA));
// Log.d(TAG, "getLastImageId::id " + id);
// Log.d(TAG, "getLastImageId::path " + fullPath);
imageCursor.close();
return fullPath;
} else {
return "";
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == FILE_SELECT_CODE_1 && resultCode == RESULT_OK){
String lastImagePath = getLastImagePath();
File fileImage = new File(lastImagePath);
Uri u = Uri.fromFile(fileImage);
//now you can set the image example:
ImageView img = new ImageView(this);
img.setImageURI(u);
}
}