第一课android开发之在activity间传递参数
一、活动间简单参数传递:
1.在布局中添加按钮,用<Button,用id设置id名称,id="@+id/这儿填写你要设置成的名称";
用text设置按钮上显示的文字。text="这儿填你要填的名称"
2.在布局中用textview来显示一个文本框内容。
3.在一个activity的java程序中,用findviewbyid(r.id.这儿填要找的id).setOnClickListener()
来将该活动中某一个按钮设置监听器。
findviewbyid用来找到该按钮在布局中的具体的,然后setonclicklistener
来设置监听器。
4.在监听器函数中用intent来设置变量来表示目的,给新建的intent构造函数传入两个参数
第一个参数为某一活动.某一类
第二个参数为某一个函数.某一按钮或者该activity全局(id.class)
用startactivity来启动intent变量。
在中间用intent的方法putextra传入简单数据;
接收参数:
在接受的活动中用intent i=getintent方法来接收参数
将文本框用i.getStringExtra来得到传过来的参数;
二、传递数据包
将监听器中定义一个包bundle的变量
用包bundle的变量的方法来实现传入参数
然后用intent变量的方法putextras将bundle传进
在接受参数的活动中,重新定义一个bundle的包,用intent的getextras来获取
文本框获取文字的另一个方法用String.format,其中参数按照print形式
getstring有一个重载函数,第一个变量输入的key
第二个变量输入没有key的默认值
或者在监听器中用intent变量的方法putextra("","")传进
第一个变量为key,他的值为第二个变量,第二个变量传入的bundle变量名称
在接受函数中变为intent变量的getbundleExtra的方法
三、在多个activity间传递值对象
创建一个java类User
将intent的变量使用方法putextra("","")
第一个参数传入一个key,第二个参数传入构造一个新的User,例如new User("zhang",2)
并将第二个变量定义为Serializable(java内置序列化对象接口)
或者(android平台提供的序列化接口)
使用Serializable,操作简单,但运行慢
在User类implements Serializable,序列化操作系统会自动做
在接收的活动中,用String.format函数接受的时候,
使用 类名 inof,后面会自动提示要接收类里的哪一个函数返回值;
使用Parcelable,操作复杂,运行快
会报错,可自动添加两个方法来实现
还得向第二个方法中添加全自动序列化的代码
dest.writeString(getName());
dest.writeInt(getAge());
还需要创建一个public static final Creator<User>CREATOR=new Creator<User>()
在其中添加return new User(source.readString(),source.readInt());
若不止一个需要传输的数据是string或int时,通过writebundle来实现
四、获取activity返回参数
用linearLayout来设置布局,orientation来设计布局方式
用setresult返回子函数的返回值,第一个值表示判断是否返回
finish结束当前activity
在主函数中不用startactivity来得到返回值,而是通过startactivityforresult来得到返回值
可获得请求码和结果码,第三个参数得到setresult中的第二个参数
第一课android开发之在activity间传递参数的更多相关文章
- android开发之在activity中控制另一个activity的UI更新
转自:http://blog.csdn.net/jason0539/article/details/18075293 第一种方法: 遇到一个问题,需要在一个activity中控制另一个acitivit ...
- Android开发之bug-No Activity found to handle Intent
android.content.ActivityNotFoundException: No Activity found to handle Intent 做Android开发中,使用隐式intent ...
- Android开发之Tween(补间动画)
在android中动画主要有三种,①帧动画(http://blog.csdn.net/dmk877/article/details/45893017)这篇文章已经详细的进行了讲解,②补间动画这也是这篇 ...
- Android学习手记(3) Activity间传递数据
1. 简单数据传递 建立两个Activity,名称分别为MainActivity和TheAty,在MainActivity中新建一个Button,id为btnStartAty.在TheAty中新建一个 ...
- Android广播接收器和Activity间传递数据
Activity向广播接收器传递数据很简单,只需要在发送广播前将数据put进Intent中就行了. 广播接收器怎么向Activity传送数据?这里要用到接口,通过在广播接收器里定义一个接口,然后让接收 ...
- activity间传递参数
传递值对象 值对象可以理解为自定义的数据类型对象. 为了完成这个知识点的讲解,先来创建一个User类型的类,它有name和age两个属性,然后请添加getter/setter方法,构造方法等基本方法. ...
- Android开发之InstanceState详解(转)---利用其保存Activity状态
Android开发之InstanceState详解 本文介绍Android中关于Activity的两个神秘方法:onSaveInstanceState() 和 onRestoreInstanceS ...
- Android开发之旅4:应用程序基础及组件
引言 为了后面的例子做准备,本篇及接下来几篇将介绍Android应用程序的原理及术语,这些也是作为一个Android的开发人员必须要了解,且深刻理解的东西.本篇的主题如下: 1.应用程序基础 2.应用 ...
- Android开发之InstanceState详解
Android开发之InstanceState详解 本文介绍Android中关于Activity的两个神秘方法:onSaveInstanceState() 和 onRestoreInstanceS ...
随机推荐
- 漫谈Linux标准的文件系统(Ext2/Ext3/Ext4)
Ext 全称Linux extended file system, extfs,即Linux扩展文件系统,Ext2就代表第二代文件扩展系统,Ext3/Ext4以此类推,它们都是Ext2的升级版,只不过 ...
- eShopOnContainers 知多少[4]:Catalog microservice
引言 Catalog microservice(目录微服务)维护着所有产品信息,包括库存.价格.所以该微服务的核心业务为: 产品信息的维护 库存的更新 价格的维护 架构模式 如上图所示,本微服务采用简 ...
- scala获取某个时间间隔的时间
原始 dataFrame : //获取前7天的时间long类型 def getDaytimeTime(day:Int): Long = { val cal = Calendar.getInstance ...
- ASP.NET Core WebApi使用Swagger生成api说明文档看这篇就够了
引言 在使用asp.net core 进行api开发完成后,书写api说明文档对于程序员来说想必是件很痛苦的事情吧,但文档又必须写,而且文档的格式如果没有具体要求的话,最终完成的文档则完全取决于开发者 ...
- Python--开发简单爬虫
简单爬虫架构 动态运行流程 URL管理器的作用 URL管理器的3种实现方式 网页下载器的作用 Python网页下载器的种类 urllib2下载网页的3种方法 网页解析器的作用 Python的几种网页解 ...
- Java进阶篇设计模式之三 ----- 建造者模式和原型模式
前言 在上一篇中我们学习了工厂模式,介绍了简单工厂模式.工厂方法和抽象工厂模式.本篇则介绍设计模式中属于创建型模式的建造者模式和原型模式. 建造者模式 简介 建造者模式是属于创建型模式.建造者模式使用 ...
- 强化学习(二)马尔科夫决策过程(MDP)
在强化学习(一)模型基础中,我们讲到了强化学习模型的8个基本要素.但是仅凭这些要素还是无法使用强化学习来帮助我们解决问题的, 在讲到模型训练前,模型的简化也很重要,这一篇主要就是讲如何利用马尔科夫决策 ...
- Prism定制Region控件
并不是所有控件都可以被用作Region了吗?我们将Gird块的代码变成这样: <Grid> <ContentControl prism:RegionManager.RegionNam ...
- cocos creator主程入门教程(七)—— MVC架构
五邑隐侠,本名关健昌,10年游戏生涯,现隐居五邑.本系列文章以TypeScript为介绍语言. 这一篇将介绍在游戏客户端常用的架构MVC架构.一个游戏的MVC如下划分: M:1)单例全局的数据中心Wo ...
- 网站集群架构(LVS负载均衡、Nginx代理缓存、Nginx动静分离、Rsync+Inotify全网备份、Zabbix自动注册全网监控)--技术流ken
前言 最近做了一个不大不小的项目,现就删繁就简单独拿出来web集群这一块写一篇博客.数据库集群请参考<MySQL集群架构篇:MHA+MySQL-PROXY+LVS实现MySQL集群架构高可用/高 ...