0

2D 配列をパラメーターとして別のアクティビティに渡す方法は?? フロー ソリューションにスタックしてみますが、動作しませんアクティビティ 1 でこのコードを使用すると、この行に値が正しく表示されます bundle.putSerializable("xmlResponee", xmlRespone); しかし、Activity2クラスで値を表示していませんか?何が問題なのですか? 教えてください

public class Activity1 extends Activity {

  private String[][] xmlRespone;
  Intent i = new Intent(this.getApplicationContext(), Activity2.class);
  Bundle bundle = new Bundle();
  bundle.putSerializable("xmlResponee", xmlRespone);
  i.putExtras(bundle);
  startActivity(i);

public class Activity2 extends Activity {

   private String[][] xmlRespone;
   public void onCreate(Bundle savedInstanceState) {                
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity2);
      Bundle bundle = getIntent().getExtras();

      String[][] xmlRespone2 = (String[][]) bundle.getSerializable("xmlResponee");
4

3 に答える 3

0

private String [][]xmlResponeを使用して静的クラスを作成できます。最初のアクティビティでは、それに値を割り当てることができ、別のアクティビティでは、そこからデータを呼び出すことができます。

アクティビティA--->静的クラスX--->アクティビティB。

于 2012-09-14T10:33:18.320 に答える
0

バンドル不要のインテントに直接置くことができます。

Intent intent = new Intent();
intent.putExtra("MyXML", xmlRespone);

そして読むために:

    @Override
    public void onCreate(Bundle savedInstanceState) {
        Intent intent = getIntent();
        String[] xmlRespone = intent.getStringArrayExtra("MyXML");
    }
于 2012-09-14T11:28:28.060 に答える
0

Parcelableオブジェクトを使用して、Android アクティビティ間でオブジェクトを渡すだけです。

これは本当に素晴らしいです。これはあなたが達成したいことと同じだと思います。

于 2012-09-14T11:04:22.363 に答える