onCreate事件,绑定二个按钮,第一个按钮只打开另一个Activity,第二个按打开另一个Activity并返回内容
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//处理第一个窗口,浏览窗口
Button btn1 = (Button) findViewById(R.id.button1);
//添加单击事件
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent _intent = new Intent(MainActivity.this,Activity_a.class);
startActivity(_intent);
}
});
//处理第二个窗口,打开并获取返回值
Button btn2 = (Button) findViewById(R.id.button2);
//添加单击事件
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent _intent = new Intent(MainActivity.this,Activity_c.class);
//startActivity(_intent);
startActivityForResult(_intent,100);
}
});
// ATTENTION: This was auto-generated to implement the App Indexing API.
// See https://g.co/AppIndexing/AndroidStudio for more information.
client = new GoogleApiClient.Builder(this).addApi(AppIndex.API).build();
}
主窗口中的回调事件,接收返回值
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
TextView t = (TextView)findViewById(R.id.text0);
TextView tReturn = (TextView)findViewById(R.id.textView4);
if(requestCode==100){
t.setText("进入回调100");
if(resultCode == Activity.RESULT_OK){
t.setText("进入100,选择OK");
String strValue = data.getExtras().getString("windowc");
tReturn.setText(strValue);
}
else{
tReturn.setText("选择了放弃");
}
}
else
{
t.setText("未进入回调100");
}
}
第一个窗口,没有返回值,就不用写代码了
第二个窗口有返回值,在onCreate事件里,绑写二个按钮的代码
第一个按钮“确定输入”,返回Activity.RESULT_OK,第二个“放弃输入”,返回Activity.RESULT_CANCELED
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_c);
final EditText edtText = (EditText)findViewById(R.id.editText1);
edtText.setText("请输入新内容");
//确定输入内容的按钮,单击事件
Button btn1 = (Button)findViewById(R.id.btnOK);
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent _intent = new Intent();
String strValue = edtText.getText().toString();
_intent.putExtra("windowc",strValue);
setResult(Activity.RESULT_OK,_intent);
finish();
}
});
//取消输入内容的按钮,单击事件
Button btn2 = (Button)findViewById(R.id.btnCANCEL);
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent _intner = new Intent();
setResult(Activity.RESULT_CANCELED,_intner);
finish();
}
});
}