0

List<String[]>インテントをアクティビティに渡して取得したいと思います。適切に行う方法を知っている人はいますか?ありがとうございました

4

3 に答える 3

4

それをシリアライズ可能にしてから、バンドル内のシリアライズ可能オブジェクトを次のアクティビティに渡します。

Bundle bundle = new Bundle();
bundle.putSerializable("list", serializableList);

mainIntent.putExtras(bundle);
startActivity(mainIntent);

java.util.ArrayListすでにSerializableインターフェースを実装しています。それはあなたの目的にぴったりです。次に、他のアクティビティで、次のコードを使用してリストを取得できます

Bundle bundle = getIntent().getExtras();
userInfo = (ArrayList) bundle.getSerializable("list");

それが役に立てば幸い。

于 2013-03-08T08:56:50.633 に答える
-1

可能ですが、Serializableとして渡す必要があり、余分なものを抽出するときに結果をキャストする必要があります。ArrayListはSerializableを実装し、String []は本質的にシリアル化可能であるため、コードは単純です。それを渡すには:

ArrayList<String[]> list = . . .;
Intent i = . . .;

i.putExtra("strings", list);

それを取得するには:

Intent i = . . .;
ArrayList<String[]> list = (ArrayList<String[]>) getSerializableExtra("strings");
于 2013-03-08T09:03:36.110 に答える
-1

変数をオブジェクトの静的プロパティに入れます。

元。

 public class Util {

     public static List<String[]>  mystaticlist;

}

2 番目のアクティビティから静的にアクセスします。

    List<String[]>  mystaticlist = Util.mystaticlist;
于 2013-03-08T08:59:29.020 に答える