2013-05-06 2 views
2
public class MainActivity extends Activity { 
private static final int CAMERA_PIC_REQUEST = 2500; 
Button Report_help; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    Report_help=(Button)findViewById(R.id.report_help); 
    Report_help.setOnClickListener(new OnClickListener() 
    { 
     public void onClick(View v) { 
      Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
      startActivityForResult(cameraIntent, CAMERA_PIC_REQUEST); 
     } 
    }); 

} 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    if (requestCode == CAMERA_PIC_REQUEST) { 
      Bitmap image = (Bitmap) data.getExtras().get("data"); 
      ImageView imageview = (ImageView) findViewById(R.id.display_image); 
      imageview.setImageBitmap(image); 
    } 
} 

} 

Это приложение фиксирует изображение и отображает его в образе просмотра. Но проблема в том, что после того, как я запечатлел изображение и нажал кнопку «Назад», приложение отключилось. Я не знаю, почему это так? Пожалуйста, помогите.сбой при захвате изображения при нажатии кнопки возврата

+0

опубликуйте свой метод onPause, а также ошибки, обнаруженные в LogCat, когда он сбой – chopchop

+0

, можете ли вы разместить свой логарифм? – itsrajesh4uguys

+0

Вы хотите програмировать свой задний ключ? – itsrajesh4uguys

ответ

1

Я думаю, когда вы нажимаете кнопку назад

Bitmap image = (Bitmap) data.getExtras().get("data"); 

в onActivityResult вызвать Null указателя исключения ошибку, пожалуйста, поймать эту.

0

Используйте этот код для проверки этого случая.

protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    Uri selectedImageUri = null; 
    String filePath = null; 
    switch (requestCode) {     
      case PICK_Camera_IMAGE: 
       if (resultCode == RESULT_OK) { 
        //use imageUri here to access the image     

       } else if (resultCode == RESULT_CANCELED) { 
        Toast.makeText(this, "Picture was not taken", Toast.LENGTH_SHORT).show(); 
       } else { 
        Toast.makeText(this, "Picture was not taken", Toast.LENGTH_SHORT).show(); 
       } 
       break; 
     } 

надеюсь, что это вам поможет.

Смежные вопросы