0

私は意図を作り、2つのエキストラを入れました

Intent intent = new Intent(MainActivity.this, Options.class);
                TextView labelName = (TextView) findViewById(R.id.label1); // value = "Counter1"
                TextView label2Name = (TextView) findViewById(R.id.label2); // value = "Counter 2"
                String lblNameDefault = labelName.getText().toString();
                String lbl2NameDefault = label2Name.getText().toString();
                intent.putExtra(LABEL_NAME_DEFAULT, lblNameDefault);
                intent.putExtra(LABEL_2_NAME_DEFAULT, lbl2NameDefault);

私の他の活動では、私はこのように彼らから情報を取得します

//Get name from the label
    Intent intent = getIntent();
    String lblNameDefault = intent.getStringExtra(MainActivity.LABEL_NAME_DEFAULT);
    String lbl2NameDefault = intent.getStringExtra(MainActivity.LABEL_2_NAME_DEFAULT);



   //Set current name to editText
    EditText labelNameDefault = (EditText)findViewById(R.id.set_name);
    EditText label2NameDefault = (EditText)findViewById(R.id.set_name2);
    labelNameDefault.setText(lblNameDefault, TextView.BufferType.EDITABLE);
    label2NameDefault.setText(lbl2NameDefault, TextView.BufferType.EDITABLE);

問題は、labelNameDefault と label2NameDefault の両方に LABEL_2_NAME_DEFAULT からの結果を受け取ることです。

余分に1つだけ渡すことはできますか? どうすれば両方を渡すことができますか?

デフォルトでは、labelName の値は「Counter 1」であり、label2Name の値は「counter 2」です。

コメントアウトするintent.putExtra(LABEL_2_NAME_DEFAULT, lbl2NameDefault);と、最初のラベル名は問題ありません。LABEL_2_NAME_DEFAULT が LABEL_NAME_DEFAULT を上書きしているようです

4

3 に答える 3

0

インテントで2つ(またはそれ以上)のエクストラを渡すことができます。ただし、それが同じ値ではないことLABEL_2_NAME_DEFAULTを確認する必要があります。LABEL_NAME_DEFAULT

于 2012-08-04T00:07:22.783 に答える