2016-11-13 15 views
-3

1つのアクティビティから別のアクティビティに複数の変数を渡すにはどうすればよいですか?1つのアクティビティから別のアクティビティに複数の変数を渡す方法

public class MainActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     Button save = (Button) findViewById(R.id.button1); 

     save.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 

       // get EditText by id 
       EditText inputTxt_1= (EditText) findViewById(R.id.edittext1); 
       EditText inputTxt_2=(EditText)findViewById(R.id.editText2); 
       EditText inputTxt_3=(EditText)findViewById(R.id.editText3); 
       EditText inputTxt_4=(EditText)findViewById(R.id.editText4); 

       // Store EditText in Variable 
       String str1 = inputTxt_1.getText().toString(); 
       String str2 = inputTxt_2.getText().toString(); 
       String str3 = inputTxt_3.getText().toString(); 
       String str4 = inputTxt_4.getText().toString(); 
      } 

      Intent intent = new Intent(MainActivity.this, Main2Activity.class); 
      intent.putExtra("inputTxt_1", str1); 
      intent.putExtra("inputTxt_2", str2); 
      intent.putExtra("inputTxt_3", str3); 
      intent.putExtra("inputTxt_4", str4); 
      startActivity(intent); 
     }); 
    } 
} 

それは方法putExtrastartActivityを解決することはできません示しても、私は、Androidに新しいですSTR1およびその他などを受け付けません。親切に助けてください。

+2

移動 '}'それは後に= ... '右テントの意図'上の 'startActivity(意図);'。 –

答えて

0

あなたの質問のコードはフォーマットが不適切であるため、わかりにくいですが、あなたのonClickメソッドのボディをすぐに閉じることが問題だと思います。 Intentの設定とstartActivityの呼び出しは、作成した匿名のView.OnClickListenerクラスのインスタンスの本体である、このメソッドの本体の外側で行われます。

代わりにこれを試してみてください:

save.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View view) { 

     // get EditText by id 
     EditText inputTxt_1= (EditText) findViewById(R.id.edittext1); 
     EditText inputTxt_2=(EditText)findViewById(R.id.editText2); 
     EditText inputTxt_3=(EditText)findViewById(R.id.editText3); 
     EditText inputTxt_4=(EditText)findViewById(R.id.editText4); 

     // Store EditText in Variable 
     String str1 = inputTxt_1.getText().toString(); 
     String str2 = inputTxt_2.getText().toString(); 
     String str3 = inputTxt_3.getText().toString(); 
     String str4 = inputTxt_4.getText().toString(); 

     Intent intent = new Intent(MainActivity.this, Main2Activity.class); 
     intent.putExtra("inputTxt_1", str1); 
     intent.putExtra("inputTxt_2", str2); 
     intent.putExtra("inputTxt_3", str3); 
     intent.putExtra("inputTxt_4", str4); 
     startActivity(intent); 
    } 
}); 
関連する問題