如何在Android开发中activity之间数据传递
展开全部
1,A页面利用intent对象的putExtra()方法传值,B页面利用getStringExtra()、getIntExtra()等系列方法来一一接收值;
2,A页面利用bundle对象来保存所有需要传递的数值,通过intent的putExtras()方法传值,B页面利用intent对象的getExtras()方法返回bundle对象,将所有接收的数据放在bundle对象中,利用bundle的get系列方法一一去除数据。
【备注:】如果A页面使用putExtras()方法传值,则B页面使用getExtras()接收值。如果A页面使用putExtra()方法传值,则B页面要使用getBundleExtra()方法接收值。
A页面核心代码:
Intent intent = new Intent(MainActivity.this, NextActivity.class);
Bundle bundle = new Bundle();
bundle.putString("myname", "hehaitao");
bundle.putInt("age", 16);
intent.putExtras(bundle);
startActivity(intent);
B页面核心代码:
// 接收第一个页面的传值
Intent intent = getIntent();
Bundle bundle = intent.getExtras();
String name = bundle.getString("myname");
int age = bundle.getInt("age");
this.setTitle(name + ":" + age);
展开全部
除了楼上的使用Intent之外也还有很多方法的..
创建静态对象. 静态对象值在类加载时就已经创建好, 只有到程序结束时, 该对象才被释放. 所以..不管在UI线程也好.. 子线程也罢. 他的数据不变
可以使用广播事件. BroadCast.. 相对来说用的比较少.. 你可以重写一个类来继承他的发送和注册方法.
Intent方法. 主要用于调用系统内部功能.. 如,相机.相册.拨号.短信.等等.. 对于Activity也可以..
重写Activity类.. 设置Tag.. 等等
反正方法有很多, 就看你灵活运用了.
创建静态对象. 静态对象值在类加载时就已经创建好, 只有到程序结束时, 该对象才被释放. 所以..不管在UI线程也好.. 子线程也罢. 他的数据不变
可以使用广播事件. BroadCast.. 相对来说用的比较少.. 你可以重写一个类来继承他的发送和注册方法.
Intent方法. 主要用于调用系统内部功能.. 如,相机.相册.拨号.短信.等等.. 对于Activity也可以..
重写Activity类.. 设置Tag.. 等等
反正方法有很多, 就看你灵活运用了.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询