Activity之间传递参数(一)
-------siwuxie095
传递简单数据
(1)首先创建一个项目:SendArgs

(2)选择API:21 Android 5.0

(3)选择
Empty Activity

(4)默认

(5)完成,一览:

(6)先进
activity_main.xml 里的 Text 手动添加一个Button,
删掉自带的TextView,如下:
|
<?xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.siwuxie095.sendargs.MainActivity"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/btnStartAty" android:text="启动另一个Activity"/> </RelativeLayout> |
(7)new 一个
Empty Activity:TheAty



(8)给activity_the_aty.xml添加一个TextView,如下:
|
<?xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_the_aty" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.siwuxie095.sendargs.TheAty"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World" android:id="@+id/tv"/> </RelativeLayout> |
(9)在MainActivity.java 中添加:findViewById(R.id.btnStartAty)
和setOnClickListener(new OnClick…),会自动生成代码,接着在onClick()
函数里创建一个Intent,通过 Intent 的 putExtra() 传参,最后通过 startActivity()
把Intent对象传入:
|
package com.siwuxie095.sendargs; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; public class MainActivity extends AppCompatActivity { @Override protected super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViewById(R.id.btnStartAty).setOnClickListener(new View.OnClickListener() { @Override public //创建一个new Intent()实例,传入Context和Class类型的参数 //对应MainActivity.this 和 Intent i = new Intent(MainActivity.this,TheAty.class); //通过Intent对象,调用putExtra()方法,传参 //这里传入String和String类型的参数,实际上就是键值对 i.putExtra("data","你好 //传入i startActivity(i); } }); } } |
(10)在 TheAty.java 中获取数据,如下:
|
package com.siwuxie095.sendargs; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.TextView; public class TheAty extends AppCompatActivity { private TextView tv; @Override protected super.onCreate(savedInstanceState); setContentView(R.layout.activity_the_aty); //TheAty是通过MainActivity中的Intent启动,直接通过getIntent()方法 //获取与这个Activity相关的Intent Intent i=getIntent(); //要访问TextView,先在上面声明 //findViewById()的返回值在编译时只能查看到类型是View,而事实上是TextView类型 //需要强制类型转换 tv= (TextView) findViewById(R.id.tv); //调用setText()方法设置字符串,这里字符串通过Intent获取 tv.setText(i.getStringExtra("data")); } } |
(11)发送到手机,运行一览:


【made by siwuxie095】
Activity之间传递参数(一)的更多相关文章
- Android学习总结——Activity之间传递参数
核心内容:一.在 Activity 之间传递简单数据二.在 Activity 之间传递复杂数据 三.在 Activity 之间传递自定义值对象 软件环境:Android Studio 一.在 ...
- Activity之间传递参数(四)
--------siwuxie095 获取Activity的返回参数 1.首先修改两个布局文件,都修改为 LinearLayout 布局, 添加orientation属性为:vertical. (1) ...
- 在Activity之间传递参数(四)
获取Activity的返回参数(在参数(三)User的例子的基础上实现): 1.activity_the_aty.xml文件:<EditText android:id="@+id/ed ...
- Activity之间传递参数(三)
------siwuxie095 传递值对象,即自定义的有数据类型的对象 1.首先 new 一个 class:User,用于创建自定义对象,同时右键 Generate 出 Constructor.se ...
- Activity之间传递参数(二)
------siwuxie095 传递数据包 1.传递数据包要用到Bundle,MainActivity.java中: package com.siwuxie095.sendargs; import ...
- 在Activity之间传递参数(一)
准备: 一.创建主界面:activity_main.xml文件中<Button android:text="启动另一个Activity" android:id="@ ...
- 在Activity之间传递参数(三)——serializable和parcelable的区别
传递值对象: 一.serializable实现:简单易用 serializable的迷人之处在于你只需要对某个类以及它的属性实现Serializable 接口即可.Serializable 接口是一种 ...
- 在Activity之间传递参数(二)
传递数据包bundle: 1.MainActivity.class: findViewById(R.id.btnStartAty).setOnClickListener(new View.OnClic ...
- [Android学习]Activity之间传递对象和对象集合
开发过程中,Activity之间传递数据是必不可少的,android中使用Intent和Bundle作为数据载体,在Activity之间传递,对于基础数据类型,Bundle已经提供相关的put,get ...
随机推荐
- Java使用Mysql数据库实现批量添加数据
EmployeeDao.java //批处理添加数据 public int saveEmploeeBatch(){ int row = 0; try{ con = DBCon.getConn(); S ...
- 字符集和字符编码(Charset & Encoding)
字符集和字符编码(Charset & Encoding)[转] 1.基础知识 计算机中储存的信息都是用二进制数表示的:而我们在屏幕上看到的英文.汉字等字符是二进制数转换之后的结果.通俗的说,按 ...
- webstrom11 和12破解码
很多人都发现 http://idea.lanyus.com/ 不能激活了 很多帖子说的 http://15.idea.lanyus.com/ 之类都用不了了,最近封的厉害仅作测试. 红色字体的是最近大 ...
- 习课的redis配置记录
<!-- redis begin --> <dependency> <groupId>redis.clients</groupId> <artif ...
- 二模12day2解题报告
T1.笨笨玩糖果(sugar) 有n颗糖,两个人轮流取质数颗糖,先取不了的(0或1)为输,求先手能否必胜,能,输出最少几步肯定能赢:不能,输出-1. 一开始天真的写了一个dp,f[i]表示i颗糖最少取 ...
- 谈谈React Native环境安装中我遇到的坑
谈谈React Native环境安装 这个坑把我困了好久,真的是接近崩溃的边缘...整理出来分享给大家,希望遇到跟我一样问题的小伙伴能尽快找到答案. 首先,这是在初始化App之后,react-nati ...
- HL7 2.6解析转XML(C#版)
HL7 2.6解析转XML(C#版) 项目中需要解析HL7,所以在网上找到解析代码,但错误很多,所以我修改了一下,测试好用. using System; using System.Collection ...
- 正则化方法:L1和L2 regularization、数据集扩增、dropout
正则化方法:防止过拟合,提高泛化能力 在训练数据不够多时,或者overtraining时,常常会导致overfitting(过拟合).其直观的表现如下图所示,随着训练过程的进行,模型复杂度增加,在tr ...
- python---IO多路复用
这里的IO是指网络IO python中通过select模块实现IO多路复用,select模块中有select.poll.epoll等方法 下面例子以select模块实现IO多路复用 仅仅只有IO多路复 ...
- 深入jQuery中的Callbacks()
引入 初看Callbacks函数很不起眼,但仔细一瞅,发现Callbacks函数是构建jQuery大厦的无比重要的一个基石.jQuery中几乎所有有关异步的操作都会用到Callbacks函数. 为什么 ...