0

Act1Act2Act3という 3 つのアクティビティがあります。

Act1には、But1But2But3という 3 つのボタンがあります。

3 つのボタンのいずれかをクリックすると、Act2が表示されます。

Act2にはDoneというボタンが 1 つだけあります。

私の問題は、ボタンDone in Act2をクリックすると、 Act1でクリックされたボタンに関する情報を取得して、Act2をAct3TextViewに表示することです。

私はそれを明確にしたと思います..

Act1のボタンクリックの情報をAct3に渡す方法を知る必要があるだけです

バンドルなどを使用する必要がありますか? plsはロジックと、可能であればサンプルコードを手伝ってくれますか? :)

4

3 に答える 3

3

いくつかのオプションがあります。

1) ハードコア オプションは、データベースを作成し、情報を保存/クエリすることです。

2) sharedPreferences に書き込むこともできます。 SharedPref例

3)コメントで述べたように、あるアクティビティから別のアクティビティにのみ話す場合は、intent.putExtra( "key"、value)

4) 最後に、アプリケーションを拡張でき ます。グローバル変数を扱う良い投稿は次のとおりです。Androidでグローバル変数を宣言するには?

于 2012-06-12T13:26:32.303 に答える
2

インテントを使用してみてください

        public void onClick(View arg0) {
                Bundle bundle = new Bundle();
                bundle.putInt("BtnAID", ID);
                Intent It = new Intent();
                It.setClass(A.this, B.class);
                It.putExtras(bundle);
                startActivity(It);
               }
于 2012-06-12T14:01:05.963 に答える
1

SharedPreferencesどのボタンが押されたかを記憶するために使用できます。

   SharedPreferences appSharedPrefs = PreferenceManager.getDefaultSharedPreferences(this.getApplicationContext());
                Editor prefsEditor = appSharedPrefs.edit();

    Button b1 = (Button) findViewById(R.id.button1);
    b1.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                prefsEditor.putString("buttonPressed", "Button1");
                prefsEditor.commit();

                }
            });

    Button b2 = (Button) findViewById(R.id.button2);
    b2.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                prefsEditor.putString("buttonPressed", "Button2");
                prefsEditor.commit();

                }
            });

    Button b3 = (Button) findViewById(R.id.button3);
    b3.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                prefsEditor.putString("buttonPressed", "Button3");
                prefsEditor.commit();

                }
            });

そして、Activityどのボタンが押されたかを取得したい :

SharedPreferences appSharedPrefs = PreferenceManager.getDefaultSharedPreferences(this.getApplicationContext());
String whichButton = appSharedPrefs.getString("buttonPressed", "");
if(whichButton.equals("Button1")
 //do something
if(whichButton.equals("Button2")
 //do something
if(whichButton.equals("Button3")
 //do something
于 2012-06-12T13:32:19.277 に答える