//Main interface MainActivity implements the OnClickListener interface
public class MainActivity extends Activity implements OnClickListener {
//Global environment variables in members
private EditText et_main_msg;
private Button btn_main_start1;
private Button btn_main_start2;
//Initialize the view object
et_main_msg=(EditText) findViewById(R.id.et_main_msg);
btn_main_start1=(Button) findViewById(R.id.btn_main_start1);
btn_main_start2=(Button) findViewById(R.id.btn_main_start2);
//setting Click listener
btn_main_start1.setOnClickListener(this);
btn_main_start2.setOnClickListener(this);
//Callback onclick method
@Override
public void onClick(View v) {//v is the (user-operated) view object where the event occurred
// TODO Auto-generated method stub
if (v==btn_main_start1) {
//Toast.makeText (this, "general startup", Toast.LENGTH_SHORT).show();
//1. Create intent object (display)
Intent intent = new Intent(this,SecedeActivity.class);
//2. Carry extra data
String through intent message = et_main_msg.getText().toString().trim();
intent.putExtra("MSG",message );
//3. Start activity
startActivity(intent);
}else if(v==btn_main_start2){
// Toast.makeText(this, "start with callback", Toast.LENGTH_SHORT).show();
//1. Create intent object (display)
Intent intent = new Intent(this,SecedeActivity.class);
//2. Pass intent
String message = et_main_msg.getText().toString().trim();
intent.putExtra("MSG",message );
//3.带回调启动Activity
int requestCode = 4;
startActivityForResult(intent, requestCode);
}
}
//重写onActivityResult
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
//判断code
if (requestCode==4 && resultCode==6) {
//从data中取出数据
String result = data.getStringExtra("RESULT");
//显示
et_main_msg.setText(result);
//4. Get Intent object
Intent intent=getIntent();
//5. Read extra data
String message = intent.getStringExtra("MSG");
//6. Display to edittext
et_secede_msg.setText(message);
}
//The callback back1 method passes in a view value
public void back1(View v){
//Close the current interface
finish();
}
public void back2(View v){
//Save a result
int resultCode = 6;
//Prepare a Intent with extra data
Intent data = new Intent();
String result = et_secede_msg.getText().toString().trim();
data.putExtra("RESULT",result );
//set result
setResult(resultCode, data );
//Close the current interface
finish();