2011-10-20 2 views
1

との意向を方法使用されている「intent.putExtra()」アンドロイド:別のアクティビティからパラメータを渡すパラメータ

このメソッドは、プリミティブデータを追加することができないか、私は、javaでパラメータを追加することができます豆?

できない場合は、どのように1つのアクティビティから別のアクティビティにJava Beanを送信できますか?

ありがとうございます!

答えて

3

IntentのAPIエントリを見てください。入力可能なデータ型があります。そのうちの最小値はParcebles,BundlesSerializableです。単純なオブジェクトマーシャリングが本当に必要な場合は、BeanをJSONに変換してStringとして配置し、受信側のPOJOに変換し直します。

1

オブジェクトがシリアライズ可能な場合は、このようにputExtraで追加できます。

i.putExtra(String key, Serializable value);

3

彼らはSerializableを実装している場合は、オブジェクトを送信することができます。送信者の活動で

public class Objeto implements Serializable{ 

} 

//::運命づける活動で

//create an instance of the object 
Objeto object = new Objeto(); 
//creates an intent from the current activity to the destiny activity with the data to be  transferred. 
Intent proximo = new Intent(this,TelaDestino.class); 
//transfers the object as a bundle to the next activity 
proximo.putExtra("OBJETO",objeto); 
startActivity(proximo); 

//:

private Objeto objeto; 

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

objeto = (Objeto)getIntent().getSerializableExtra("OBJETO"); 

} 

//次のことが可能エンティティ・オブジェクトで

//それを使用して、幸せになる:D

関連する問題