0

Web サービスからデータを検索する意図があります。これらのデータをこのインテントから別の画面 (インテント) に渡そうとしています

検索意図

public void setXXX(ArrayList<XXX> xxxData) {
    this.xxxs= xxxData;
    if(xxxData.size() > 0)
    {
        Intent intent = new Intent(this, otherActivity.class);

        startActivity(intent);
    }else{
        alert (getResources().getString(R.string.no_result));
    }
}

受信者の意図

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

            this.xxxs = (...);      

    setContentView(R.layout.activity_xxxlist);
    this.xxxList = (ListView) findViewById(R.id.listview);

    this.listView.setAdapter(new xxxDataAdapter(this,this.layoutInflator, this.xxxs));
}

2 番目のインテントから arrayList<> を使用するにはどうすればよいですか?

4

1 に答える 1

2

を介してオブジェクトを送信できるようにするには、そのオブジェクトのインターフェイスIntentsを実装する必要があります。Parcelableを使用してCREATOR、そのオブジェクトの文字列とプリミティブ型を記述します。

これがその開発者ページです

それが済んだら、次のようにそのオブジェクトをArrayListで送信できます。

intent.putParcelableArrayListExtra(ArrayList<Parcelable> ... );

このメソッドを参照してください:putParcelableArrayListExtra

そして、受信アクティビティでは、次のように呼び出すことができます。

getIntent().getParcelableArrayListExtra( String key );

ここのAPIで定義されているように

于 2013-03-04T18:18:29.517 に答える