0

アクティビティ グループがあり、2 つのアクティビティを開始します。ユーザーがいずれかのアクティビティのボタンを押すと、アクティビティ グループによって ArrayList が設定されます。

両方のアクティビティがこの ArrayList にアクセスできるようにする方法があるかどうか疑問に思っています。

現時点で私が持っているものは次のとおりです。

public class ExampleGroup extends ActivityGroup {

    public static ExampleGroup group;
    ArrayList<String> strs = new ArrayList<String>();

    @Override
    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        group = this;

        View exampleView = getLocalActivityManager().startActivity(
            "Example",
            new Intent(this, Example.class).addFlags(
                    Intent.FLAG_ACTIVITY_CLEAR_TOP))
            .getDecorView();

        setContentView(exampleView);

    }

    public void populateArrayList(){
    //code to do it
    }

}

public class Example extends Activity {

   @Override
    public void onCreate(Bundle savedInstanceState) {

        ExampleGroup.group.populateArrayList();

        ArrayList<String> strs2 = ExampleGroup.group.strs;

        Log.i("ArrayList contents", strs2);

    }

}

arraylist は null を返します。私が見逃しているものはありますか、それとももっと良い方法がありますか?

4

1 に答える 1

2

はい、基本的に2つのアクティビティ間でモデルオブジェクトを共有したいと考えています。これは、プログラムの構造と大きく関係しています。それを行う方法の詳細については、この投稿を参照してください。

Androidアプリのどこにグローバルメソッドと変数を配置する必要がありますか?

于 2011-04-22T15:13:30.533 に答える