您的位置:首页 > 移动开发 > Android开发

android 入门学习笔记 利用bundle实现android,activity间消息的传递

2011-07-28 10:38 836 查看
Activity间的通讯是通过Intent类。比如有两个类A.class, B.class
由A启动新的activity B(单向),当B退出的时候A将不会接收到任何信息:

Intent intent = new Intent();
intent.setClass(A.this, B.class);

Bundle bundle = new Bundle();
bundle.putString("path", path);
intent.putExtras(bundle);

startActivity(intent);


由A启动新的actvity B(双向),当B退出的时候A的onActivityForResult方法将会被调用给定的requestCode。
A.class添加代码:

Intent i = new Intent(this, B.class);
i.putExtra(key, value);
startActivityForResult(i, ACTIVITY_CODE);


B.class添加代码

//这里获取A传过来的数据
Bundle extras = this.getIntent().getExtras();
//这里通过key的方式获取值
String value = extras.getString(key);


//把值传回
A.class Bundle bundle = new Bundle();
bundle.putString(key,value);
Intent intent = new Intent();
intent.putExtras(bundle);
setResult(RESULT_OK, intent); finish();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: