Android两个Activity之间的数据交换
1. 不带数据
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
next=(Button)findViewById(R.id.next);
next.setOnClickListener(new Button.OnClickListener() { @Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent intent=new Intent();
intent.setClass(MainActivity.this, Second.class);
startActivity(intent);
}
});
}
2. 第一个Activity中数据传给第二个Activity
发送端
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
next=(Button)findViewById(R.id.next);
content=(EditText)findViewById(R.id.content);
next.setOnClickListener(new Button.OnClickListener() { @Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
String name=content.getText().toString();
Intent intent=new Intent();
intent.putExtra("name", name);
//Toast.makeText(MainActivity.this, name, Toast.LENGTH_SHORT).show();
intent.setClass(MainActivity.this, Second.class);
startActivity(intent);
}
});
}
接收端
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
name=(TextView)findViewById(R.id.name);
age=(EditText)findViewById(R.id.age);
back=(Button)findViewById(R.id.back); Intent intent=getIntent();
String na=intent.getStringExtra("name");
//Toast.makeText(Second.this, na, Toast.LENGTH_SHORT).show();
name.setText(na);
}
3. 第二个Activity把数据传给第一个Activity
第一个Activity
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
next=(Button)findViewById(R.id.next);
content=(EditText)findViewById(R.id.content);
next.setOnClickListener(new Button.OnClickListener() { @Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
String name=content.getText().toString();
Intent intent=new Intent();
intent.putExtra("name", name);
//Toast.makeText(MainActivity.this, name, Toast.LENGTH_SHORT).show();
intent.setClass(MainActivity.this, Second.class);
startActivityForResult(intent, RESULT_CODE);
}
});
} @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if(requestCode==RESULT_CODE){
if(resultCode==Second.RESULT_CODE){
Bundle bundle=data.getExtras();
String con=bundle.getString("age");
content.setText(con);
}
} }
第二个Activity
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
name=(TextView)findViewById(R.id.name);
age=(EditText)findViewById(R.id.age);
back=(Button)findViewById(R.id.back);
back.setOnClickListener(new Button.OnClickListener() { @Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
String a=age.getText().toString();
Intent intent=new Intent();
Bundle bundle=new Bundle();
bundle.putString("age", a);
intent.putExtras(bundle);
setResult(RESULT_CODE, intent);
finish();
}
}); Intent intent=getIntent();
String na=intent.getStringExtra("name");
//Toast.makeText(Second.this, na, Toast.LENGTH_SHORT).show();
name.setText(na);
}
Android两个Activity之间的数据交换的更多相关文章
- Android Fragment与Activity之间的数据交换(Fragment从Activity获取数据)
Fragment与Activity之间的数据交换,通常含有3: 一.Fragment从Activity获取数据(仅本文介绍了一个第一): 两.Activity从Fragment获取数据: 三.Frag ...
- 两个Activity之间共享数据、互相访问的另一种方式的实现
本帖最后由 勇敢的心_ 于 2010-9-29 11:51 编辑 本人从windows编程转过来学习Android开发,一直在想如果两个Activity之间能够像C#或delphi中的Form一样,可 ...
- 【Android 复习】 : Activity之间传递数据的几种方式
在Android开发中,我们通常需要在不同的Activity之间传递数据,下面我们就来总结一下在Activity之间数据传递的几种方式. 1. 使用Intent来传递数据 Intent表示意图,很多时 ...
- 两个activity之间传递数据用startActivityForResult方法。
package com.example.testactivityresquest; import android.app.Activity; import android.content.Intent ...
- Android学习之Activity之间的数据传递
Activity与Activity之间很多情况下都需要进行数据的传递,下面就用几个简单的例子来看一下. (一).一个Activity启动另一个Activity并将数据传递到这个Activity当中 思 ...
- Android TabHost中Activity之间传递数据
例子1: TabHost tabhost = (TabHost) findViewById(android.R.id.tabhost); tabhost.setup(this.getLocalActi ...
- 两个activity之间的数据传递
1.清单文件第二个activity<activity android:name="com.example.twodatapass.ResultActivity" androi ...
- [转]Android:Activity+Fragment及它们之间的数据交换(一)
2014-05-18 来源:Android:Activity+Fragment及它们之间的数据交换(一) 简介: 为什么要用Fragment?使用Fragment可以在一个Acti ...
- Android:Activity+Fragment及它们之间的数据交换(一)
简单介绍: 为什么要用Fragment?使用Fragment能够在一个Activity中实现不同的界面. Fragment与Fragment之间的动画切换,远比Activity与Activity之间的 ...
随机推荐
- 一篇搞定Vuex
1.简介 首先,你必须明显明白vuex到底是干啥的,主要解决开发中的哪些问题? Vuex是一个专门为Vue.js应用程序开发的状态管理模式,它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证 ...
- python基础-第十三篇-13.2Web框架之Tornado
Tornado是非阻塞异步web frame,而且速度相当快,得力于其非阻塞的方式和对epoll的运用 Tornado每秒可以处理数以千计的链接,所以它可以有效的处理C10K问题 下载安装 pip3 ...
- mysql数据库表插入单条数据/批量插入数据
1.创建表格 reate table trade( id int(4) not null primary key auto_increment, product varchar(30) null, p ...
- 跨平台编译CMake使用
CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程).他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的 ...
- git 上传本地代码到远程仓库
未经允许,禁止转载! 查看哪些文件被修改过:git status 查看具体的修改内容:git diff 对新添加的文件进行添加:git add 文件名 提交修改标记:git commit -m &qu ...
- 配置数据库,Flask-Alchemy
Flask-Alchemy连接数据库的插件 获取当前项目路径(绝对路径) 来自为知笔记(Wiz)
- day13 迭代器
迭代器 'iterable' 可迭代的 内部含有__iter__方法的数据类型就是可迭代的 —— 可迭代协议 print(dir([])) print(dir({})) print(dir(5)) p ...
- Oracle_trunc截取函数
转:http://blog.sina.com.cn/s/blog_6b58d2fa0100r6ub.html TRUNC函数用于对值进行截断. 用法有两种:TRUNC(NUMBER)表示截断数字,TR ...
- CNN学习笔记:卷积运算
CNN学习笔记:卷积运算 边缘检测 卷积 卷积是一种有效提取图片特征的方法.一般用一个正方形卷积核,遍历图片上的每一个像素点.图片与卷积核重合区域内相对应的每一个像素值乘卷积核 .内相对应点的权重,然 ...
- Eclipse 中安装Browse Deployment Location插件
Browse Deployment Location 功能的插件名称为: Pivotal tc Server Integration for Eclipse 可在Eclippse的Eclipse M ...