OnActivityResult不是写在onCreate中,而是需要重写activity方法的onActivityResult方法
示例代码如下
//原activity
public class OneActivity extends Activity{
Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Button) findViewById(R.id.btn);
btn.setOnClickListener(new OnClickListener(){
public void onClick(View v){
Intent intent = new Intent(OneActivity.this,TwoActivity.class)
startActivityForResult(intent,1);
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
//得到结果处理代码写在这
}
}
//被启动的activity
public class TwoActivity extends Activity{
Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Button) findViewById(R.id.btn);
btn.setOnClickListener(new OnClickListener(){
public void onClick(View v){
Intent intent = new Intent();
//向intent加入数据
//下面就设置了两个数据一个int和一个string作为返回
intent.putExtra("msg1",1);
intent.putExtra("msg2","hello");
setResult(1, intent);
}
}
}
OnActivityResult 是不是应该在 OnClickListener里面?
intent.putExtra(key, valueObject);
String valueObject = intent.getStringExtra(key);
http://www.eoeandroid.com/thread-204417-1-1.html