StartActivityForResult funktioniert nicht in Fragment

Ich arbeite derzeit mit Fragment. Ich möchte Bild aus der Galerie auswählen und es auf die Fragmentklasse anzeigen. Aber hier ist startActivityForResult () funktioniert nicht in Fragment.

Meine Fragmentklasse

Button loadimage=(Button) view.findViewById(R.id.loadButton); loadimage.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Intent i = new Intent(Intent.ACTION_PICK,android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI); startActivityForResult(i, RESULT_LOAD_IMAGE); } }); @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK && null != data) { Uri selectedImage = data.getData(); String[] filePathColumn = { MediaStore.Images.Media.DATA }; Cursor cursor = getActivity().getContentResolver().query(selectedImage, filePathColumn, null, null, null); cursor.moveToFirst(); int columnIndex = cursor.getColumnIndex(filePathColumn[0]); String picturePath = cursor.getString(columnIndex); cursor.close(); imgview.setImageBitmap(BitmapFactory.decodeFile(picturePath)); } } 

  • Aufblasen eines Layouts mit ImageButton im Fragment programmgesteuert
  • App-Crashing bei der Verwendung von Fragmenten
  • Java.lang.IllegalStateException: Fragment bereits hinzugefügt
  • Das Zurückkehren kehrt nicht zum vorherigen Fragment zurück
  • Was ist der Anwendungsfall für ein Fragment ohne UI?
  • Schließen Sie die Schublade beim Start der Anwendung
  • Textbilder in einem Fragment-Layout ändern sich nicht beim Aufruf von SetText ()
  • Hinzufügen eines Fragments zu einem Dialog
  • 2 Solutions collect form web for “StartActivityForResult funktioniert nicht in Fragment”

    In Aktivitätsklasse:

     @Override public void onActivityResult(int requestCode, int resultCode, Intent data){ super.onActivityResult(requestCode,resultCode,data); } 

    Im Fragment:

     @Override public void onActivityResult(int requestCode, int resultCode, Intent data){ // Handle activity result here } 

    Start-Aktivität für Ergebnis aus Fragment:

     Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(intent, 1); 

    Override onActivityResult in deiner übergeordneten Fragment-Aktivität

     @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); } 
    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.