2012-01-23 2 views
0

Загрузите камеру и сделайте снимок, затем установите снимок в изображение; однако приложение всегда делает последнее взятое изображение, а не текущее.Приложение не загружает изображения правильно ???

Итак, если я открою приложение и сделаю снимок, изображение будет черным. Закройте приложение, снова откройте и сделайте еще один снимок, теперь изображение станет первым снимком.

???

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
     File file = new File(Environment.getExternalStorageDirectory(), "image.jpg"); 
     System.out.println((Environment.getExternalStorageDirectory() + "/image.jpg")); 
     outputFileUri = Uri.fromFile(file); 
     intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri); 
     startActivityForResult(intent, TAKE_PICTURE); 

     setContentView(R.layout.image_process); 
     bmp = BitmapFactory.decodeFile(Environment.getExternalStorageDirectory() + "/image.jpg"); 
     image = (ImageView) findViewById(R.id.imageView1); 

      image.setImageBitmap(bmp); 

ответ

1

Поскольку вы начинаете ваше Изображение Принимая деятельности с startActivityForResult, вам нужно переместить код следующего startActivityForResult(.. к методу onActivityResult:

/** Called when an activity called by using startActivityForResult finishes. */ 
@Override 
public void onActivityResult(int requestCode, int resultCode, Intent data) { 
    Log.d(TAG, "Picture taken!"); 
    setContentView(R.layout.image_process); 
    bmp = BitmapFactory.decodeFile(Environment.getExternalStorageDirectory() + "/image.jpg"); 
    image = (ImageView) findViewById(R.id.imageView1); 
    image.setImageBitmap(bmp); 
} 
+0

Спасибо так много! :) Работал. Ответ принят! –

+0

Добро пожаловать :) –