一、活动间简单参数传递:
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间传递参数的更多相关文章

  1. android开发之在activity中控制另一个activity的UI更新

    转自:http://blog.csdn.net/jason0539/article/details/18075293 第一种方法: 遇到一个问题,需要在一个activity中控制另一个acitivit ...

  2. Android开发之bug-No Activity found to handle Intent

    android.content.ActivityNotFoundException: No Activity found to handle Intent 做Android开发中,使用隐式intent ...

  3. Android开发之Tween(补间动画)

    在android中动画主要有三种,①帧动画(http://blog.csdn.net/dmk877/article/details/45893017)这篇文章已经详细的进行了讲解,②补间动画这也是这篇 ...

  4. Android学习手记(3) Activity间传递数据

    1. 简单数据传递 建立两个Activity,名称分别为MainActivity和TheAty,在MainActivity中新建一个Button,id为btnStartAty.在TheAty中新建一个 ...

  5. Android广播接收器和Activity间传递数据

    Activity向广播接收器传递数据很简单,只需要在发送广播前将数据put进Intent中就行了. 广播接收器怎么向Activity传送数据?这里要用到接口,通过在广播接收器里定义一个接口,然后让接收 ...

  6. activity间传递参数

    传递值对象 值对象可以理解为自定义的数据类型对象. 为了完成这个知识点的讲解,先来创建一个User类型的类,它有name和age两个属性,然后请添加getter/setter方法,构造方法等基本方法. ...

  7. Android开发之InstanceState详解(转)---利用其保存Activity状态

    Android开发之InstanceState详解   本文介绍Android中关于Activity的两个神秘方法:onSaveInstanceState() 和 onRestoreInstanceS ...

  8. Android开发之旅4:应用程序基础及组件

    引言 为了后面的例子做准备,本篇及接下来几篇将介绍Android应用程序的原理及术语,这些也是作为一个Android的开发人员必须要了解,且深刻理解的东西.本篇的主题如下: 1.应用程序基础 2.应用 ...

  9. Android开发之InstanceState详解

    Android开发之InstanceState详解   本文介绍Android中关于Activity的两个神秘方法:onSaveInstanceState() 和 onRestoreInstanceS ...

随机推荐

  1. Django-CSRF跨站请求伪造防护

    前言 CSRF全称Cross-site request forgery(跨站请求伪造),是一种网络的攻击方式,也被称为“One Click Attack”或者Session Riding,通常缩写为C ...

  2. 再谈AbstractQueuedSynchronizer3:基于AbstractQueuedSynchronizer的并发类实现

    公平模式ReentrantLock实现原理 前面的文章研究了AbstractQueuedSynchronizer的独占锁和共享锁,有了前两篇文章的基础,就可以乘胜追击,看一下基于AbstractQue ...

  3. ==运算符和equals()方法的区别

    Java语言程序中判断两个变量是否相等有两种方式:一是运用==运算符,二是运用equals方法. 1. ==运算符 对于==运算符来说,如果两个变量是基本类型的,并且是数值类型,则只要它们的值相等,就 ...

  4. vue的基本指令

      1.创建vue对象 <script src="vue.js"></script> var vm = new Vue({     el:"#ap ...

  5. 又拍云张聪:OpenResty 动态流控的几种姿势

    2019 年 1 月 12 日,由又拍云.OpenResty 中国社区主办的 OpenResty × Open Talk 全国巡回沙龙·深圳站圆满结束,又拍云首席架构师张聪在活动上做了< Ope ...

  6. Mybatis之旅第二篇-Mapper动态代理方式

    一.引言 通过上一篇mybatis的入门学习,我们已经会使用mybatis实现简单的增删改查,但是我们也发现了用原始Dao开发的一些问题: Dao方法体存在重复代码:通过SqlSessionFacto ...

  7. 使用 线性规划 解决 数字 排序问题, +Leapms模型

    问题 将如下一组数字从大到小排序. {10, 20, -32, 177, 0, -11.5, 19, 7, 6.2, -6.28, -2.71, 44} 解决办法 建立数学模型,给出各个数字的次序值. ...

  8. 微信公众号开发C#系列-9、多公众号集中管理

    1.概述 通过前面8篇关于微信开发相关文章的学习,我们已经对微信常用开发有了一个比较深入的了解.前面的文章都是基于某一特定公众号的,在现实业务中同一单位个体运营着不至一个公众号,此时就需要对多个公众号 ...

  9. JDBC事务控制

    概念 事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit).事务通常由高级数据库操纵语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并 ...

  10. 1.1专题介绍「深入浅出ASP.NET Core系列」

    大家好,我是IT人张飞洪,专注于.NET平台十年有余. 工作之余喜欢阅读和写作,学习的内容包括数据结构/算法.网络技术.Linux系统原理.数据库技术原理,设计模式.前沿架构.微服务.容器技术等等…… ...