2016-05-16 8 views
0

Ich habe versucht, zu lernen, wie man die Kamera mit Android verwenden, und aus irgendeinem Grund, nachdem die Kamera fertig ist, lädt das Foto gerade nicht. Ich habe 2 Tasten und ein Bild in der Ansicht, 1 für die Kamera und 1, um das Bild zu laden, aber ich möchte das Bild ohne die Schaltfläche laden .. (Beide Tasten funktionieren gut, onActivityResult scheint einfach nicht zu funktionieren)Android onActivityResult wird nicht für die Kamera aktiviert?

static final int CAM_REQUEST = 1; 
button = (Button) findViewById(R.id.button); 
     imageView = (ImageView) findViewById(R.id.imageView); 
     Button button2 = (Button) findViewById(R.id.button3); 
     button.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View v) { 
       Intent camera_intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
       File file = getFile(); 
       camera_intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file)); 
       startActivityForResult(camera_intent , CAM_REQUEST); 
      } 
     }); 

button2.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View v) { 
       String path = "sdcard/camera_app/cam_image.jpg"; 
       imageView.setImageDrawable(Drawable.createFromPath(path)); 

      } 
     }); 

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 

    String path = "sdcard/camera_app/cam_image.jpg"; 
    imageView.setImageDrawable(Drawable.createFromPath(path)); 
} 

wie Sie den Code von button2 sehen kann, ist die gleiche wie onActivityResult aber die Schaltfläche lädt das Bild während onActivityResult nicht der Fall ist ..

+0

Sehen Sie, ob dies hilft: http://StackOverflow.com/a/6147919/833647 –

Antwort

1

Rufen Sie den Super in onActivityResult()

Es aussehen sollte so:

super.onActivityResult(requestCode, resultCode, data);