0

受け渡しクラスでオブジェクトを渡すためのコード

final ArrayList<SongDetails> Songinfo = getSongsFromDirectory(f);
public void onItemClick(AdapterView a, View v, int position, long id) {


               Intent intent = new Intent(getActivity(), NowPlaying.class);
               intent.putExtra("Data1",songinfo);

               intent.putExtra("Data2",position);
               startActivity(intent);

                     }
             });

取得クラスのコード

Intent i = getIntent();


        ArrayList<SongDetails> Songinfo2 = (ArrayList<SongDetails>)i.getSerializableExtra("Data1"); 
        position=i.getIntExtra("Data2", 1);

私はクラスとSongDetailsクラスの両方にSerializableを実装しました(オブジェクトを渡しています)

4

3 に答える 3

1

パーセルの使用を検討してください.....

パーセルを使用することは、シリアライズ可能を使用するよりも優れた高速な方法です

于 2013-08-10T08:22:38.390 に答える
1

オブジェクトを渡したい場合は、Parcelable インターフェイスを使用できます。 バンドル は任意のパーセルブルを保持でき、異なるs とプロセス間の境界をまたぐため、 Intents はそれらと一緒に任意のパーセルブルを保持できます。BundleActivity

于 2013-08-09T15:01:00.330 に答える