2016-11-13 2 views
-3

한 활동에서 다른 활동으로 여러 변수를 전달하는 방법은 무엇입니까?하나의 활동에서 다른 활동으로 여러 변수를 전달하는 방법

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); 
     }); 
    } 
} 

그것은 방법 putExtra, startActivity 심지어 내가 안드로이드에 새로운 오전 STR1 및 기타 등을 수락하지를 해결할 수없는 보여줍니다. 친절하게 도와주세요.

+2

이동합니다'}'그 이후에 = ...'권리 의도 의도 '위에있는'만약 startActivity (의도)'. –

답변

0

질문에있는 코드의 형식이 잘못되어 확실하지는 않지만, onClick 메서드 본문을 너무 빨리 닫는 것이 문제라고 생각합니다. Intent setup 및 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); 
    } 
}); 
관련 문제