Intent在Activity间的传值

Intent在Activity间的传值

是以键值对的形式存取的

存值

复制代码
@Override
public void onClick(View v) {
//生成Intent对象(包含了ctivity间传的Data,param);相当于一个请求
Intent intent=new Intent();
//键值对
intent.putExtra("extra", "archie2010");
//从此ctivity传到另一Activity
intent.setClass(OneActivity.this, OtherActivity.class);
//启动另一个Activity
OneActivity.this.startActivity(intent);
复制代码

取值

复制代码
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//设置当前ctivity布局
setContentView(R.layout.other);
//获得从上一个Activity传来的intent对象
Intent intent=getIntent();
String stringValue
=intent.getStringExtra("extra");

myTextView
=(TextView) findViewById(R.id.myTextView);
//设置TextView显示的值(引用String的配置文件)
//myTextView.setText(R.string.other);
//从上个Activity传过来的值
myTextView.setText(stringValue);
}
复制代码

Intent在两个Activity传递时,这两个Activity可不在同一应用程序下

如在一个Activity中使用Android自带的发送消息的Activity

复制代码
@Override
public void onClick(View v) {

//启动Android发短信的Activity
//Intent在两Activity传递,Activity可不在同一应用程序下
Uri uri=Uri.parse("smsto:1561893432*");
Intent intent
=new Intent(Intent.ACTION_SENDTO, uri);

intent.putExtra(
"sms", "sms Content");
startActivity(intent);
}
复制代码

这里的两个Activity便是不在同一应用程序下

posted on   archie2010  阅读(12372)  评论(0编辑  收藏  举报

编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
< 2011年5月 >
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 1 2 3 4
5 6 7 8 9 10 11

统计

点击右上角即可分享
微信分享提示