infomation 등록하는 창에서 edittext로 값을 입력받고, 이 입력받은 값을 MainActivity의 textview에 뜨게 하고 싶은데 잘 안 됩니다. 어플리케이션을 실행해 보면, Main에서 textview로 Name, Birth라고 적어둔 것이 아예 뜨지도 않고요 ㅠㅠ InfoActivity 창에서 REGISTER를 누르면 아예 어플이 꺼져버립니다... 코드의 어느 부분에 이상이 있는지 한번 봐주세요!
InfoActivity에서 name과 birth로 값을 받아 Main에서 넘겨받는 걸로 했는데 ㅠㅠ...
1) MainActivity
package com.example.dain.test_info;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity{
private TextView etName;
private TextView etBirth;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent intent = getIntent();
String name = intent.getStringExtra("name");
String birth = intent.getStringExtra("birth");
etName = (TextView) findViewById(R.id.etName);
etBirth = (TextView) findViewById(R.id.etBirth);
etName.setText(name);
etBirth.setText(birth);
}
public void onSettingClicked(View v){
Intent intent = new Intent(this, InfoActivity.class);
startActivity(intent);
}
}
2) InfoActivity
package com.example.dain.test_info;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class InfoActivity extends AppCompatActivity{
private EditText etName;
private EditText etBirth;
private Button btnDone;
private Button btnCancel;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_info);
etName = (EditText) findViewById(R.id.etName);
etBirth = (EditText) findViewById(R.id.etBirth);
btnDone = (Button) findViewById(R.id.btnDone);
btnCancel = (Button) findViewById(R.id.btnCancel);
btnDone.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
if(etName.getText().toString().length() == 0){
Toast.makeText(InfoActivity.this, "Put the NAME again!", Toast.LENGTH_SHORT).show();
etName.requestFocus();
return;
}
if(etBirth.getText().toString().length() == 0){
Toast.makeText(InfoActivity.this, "Put the BIRTH again!", Toast.LENGTH_SHORT).show();
etBirth.requestFocus();
return;
}
Intent intent = new Intent();
intent.putExtra("name", etName.getText().toString());
intent.putExtra("birth", etBirth.getText().toString());
startActivity(intent);
finish();
}
});
btnCancel.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
finish();
}
});
}
}