您的位置:首页 > 其它

onActivityResult 方法学习 和 遇见的问题

2013-03-22 00:06 441 查看
转: http://www.maxiaoguo.com/shipin/361.html
内容: 从a--->b 页面 再从b--》a 页面

public class activityA extends Activity {

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

startActivityForResult(new Intent(this,ActivityB.class), 100);

}

@Override

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

// TODO Auto-generated method stub

super.onActivityResult(requestCode, resultCode, data);

if(requestCode==100){

if(resultCode==RESULT_OK){

Log.e("tag", "----------------");

}

}

}

、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

public class ActivityB extends Activity{

@Override

protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub

super.onCreate(savedInstanceState);

setContentView(R.layout.a);

Intent intent = new Intent(this,activityA .class);

setResult(RESULT_OK,intent);

this.finish();

}

}

有需要传递值的时候通过intent 传递就行

最坑的一点是: 这样写在activityA 中竟然收不到值, 为什么。。。。

搞了半天 一行一行代码的比对,最后发现 配置文件中多写了一个 android:launchMode="singleTask"

去了他就行了。

觉得因为 singletask 属性的意思是 在activity栈中 有且只有一个单独名称的activity,

跟onActivityResult 机制冲突
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: