2016-07-28 25 views
-4

weitergeben Kann ich durch Referenzobjekt zwischen Aktivitäten in Android, Wie?Wie ich durch refernece Objekt zwischen Aktivität in Android

Danke

+2

Ich stimme diese Frage als off-topic zu schließen, weil das OP ein ** Lazybone ** ist. Googling für "android pass-Objekt durch Referenz zwischen Aktivitäten" zeigt keine Mühe –

+1

ja, wenn Ihr Objekt eine benutzerdefinierte 'Binder' Klasse ist, aber es ist ein riskantes Zeug, da es ein" Live "-Objekt und Ihre sendende Aktivität kann zu jeder Zeit tot sein – pskink

+0

Mögliches Duplikat von [Wie man ein Objekt von einer Aktivität an eine andere auf Android übergibt] (http://stackoverflow.com/questions/2736389/how-to-pass-an-object-from-one- activity-to-another-on-android) –

Antwort

2

Sie sollten es gegoogelt haben.

This, this, this oder this

können Sie diese Beispiele verwenden, wenn Ihre Objekte Parcel oder Serializable implementiert. Leider ist es nicht möglich, ein Objekt als Referenz zu senden. Sie können dieses Problem umgehen te Objekt werden zurückschicken:

Rücksendung der Sache:

Intent result = new Intent(); 
result.putExtra("NAME", myEditedObject); 
setIntent(result); 
setResult(Activity.RESULT_OK); 
finish(); 

das zurückgegebene Objekt zu lesen:

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    // Check which request we're responding to 
    if (requestCode == MY_REQUEST_CODE) { 
     // Make sure the request was successful 
     if (resultCode == RESULT_OK) { 
      Bundle b = this.getIntent().getExtras(); 
      if (b != null) 
       myObject= (MyObject) b.getParcelable(STRING_NAME); 
     } 
    } 
} 
+1

Daumen hoch für viele gute? –

+0

Vielen Dank, aber ich möchte als Referenz zwischen der Klasse übergeben, putExtra wird nach Wert übergeben nicht durch Verweis übergeben. –

+0

Vielen Dank, ich werde es versuchen. –

0

Wenn Ihr Objekt Parcel oder Serializable implementiert, dann ist die Antwort ist ja. Fügen Sie das Objekt in die Absicht ein, die Sie zum Anzeigen der Aktivität verwenden möchten.

+0

Kann Objekt, das Parcelable oder Serializable übergeben, durch Referenz zwischen Aktivitäten implementieren? –

+0

@WuttipongKhemphetjetsada als Referenz können Sie nur 'Binder' Objekte übergeben – pskink

+0

Ok, danke hast du ein Beispiel? –