1.使用Intent进行传输

	//发送数据的Activity
class button implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String ET_1String = ET_1.getText().toString(); //得到文本输入框中的文本
String ET_2String = ET_2.getText().toString();
Intent intent = new Intent();
intent.putExtra("one",ET_1String); //进行参数的传递(“参数名字”,参数)
intent.putExtra("two",ET_2String);
intent.setClass(MainActivity.this, result.class);
MainActivity.this.startActivity(intent);
}
} //接收数据的Activity
public class result extends Activity{
private TextView resulTextView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.result);
resulTextView = (TextView)findViewById(R.id.TV_1);
Intent intent = getIntent(); //定义接收数据的Intent
String oneString = intent.getStringExtra("one");
String twoString = intent.getStringExtra("two");
int a = Integer.parseInt(oneString); //进行计算之前要进行强制类型转换
int b = Integer.parseInt(twoString);
int c = a * b;
resulTextView.setText(c + ""); //要加一个空字符对int类型进行强制类型转换
}
}

2.使用静态变量进行传递

1.主界面(发送数据的Activity)

class ButtonListener implements android.view.View.OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent intent = new Intent();
intent.setClass(MainActivity.this, OtherActivity.class);
OtherActivity.nameString = "zhao";
startActivity(intent);
}
} 2.接受数据Activity public class OtherActivity extends Activity{
//定义静态变量
public static String nameString; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.otheractivity);
System.out.println("nameString-------->"+nameString);
}
}

3.利用setResult进行数据传输

	//1.要关闭的页面
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.otheractivity);
Intent intent = this.getIntent();
intent.putExtra("tel", 12345);
//设置requestCode和带有数据的intent对象
OtherActivity.this.setResult(3, intent);
//马上关闭Activity
this.finish();
} //2.上面的页面关闭时,此页面进行数据的接收
class ButtonListener implements android.view.View.OnClickListener{
@Override
public void onClick(View arg0) {
Intent intent = new Intent();
intent.setClass(MainActivity.this, OtherActivity.class);
//与普通的start方法不同,需要设置requestCode
startActivityForResult(intent, 1);
}
} //如果要进行此操作,需要在数据接收页面中复写activity的onActivityResul()方法
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
int tel = 0;
//根据返回码resultCode来判断下一步进行的业务代码
if(resultCode==3){
tel = data.getIntExtra("tel", 0);
}
Log.i(TAG, "tel--------->"+String.valueOf(tel));
}


【Android基础】Activity之间进行参数传递的三种方式的更多相关文章

  1. 【Android 复习】 : Activity之间传递数据的几种方式

    在Android开发中,我们通常需要在不同的Activity之间传递数据,下面我们就来总结一下在Activity之间数据传递的几种方式. 1. 使用Intent来传递数据 Intent表示意图,很多时 ...

  2. Android - 页面返回上一页面的三种方式

    今年刚刚跳槽到了新公司,也开始转型做Android,由此开始Android的学习历程. 最近在解很多UI的bug,在解bug过程中,总结了在UI的实现过程中,页面返回上一页面的几种实现方式. 一. 自 ...

  3. struts2简单入门-参数传递的三种方式

    三种方式的简单说明 属性传递 把参数定义为属性提供get/set方法. 使用情况 参数少,不需要共享. 演示代码 public class LoginAction extends ActionSupp ...

  4. Android基础 -- Activity之间传递数据(bitmap和map对象)

    原文:http://blog.csdn.net/xueerfei008/article/details/23046341 做项目的时候需要用到在2个activity之间传递一些数据,之前做的都是些字符 ...

  5. Android 开发添加控件事件的三种方式

    import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view ...

  6. Android 监听软键盘按键的三种方式

    前言: 我们在Android手机上面有时候会遇到监听手机软键盘按键的时候,例如:我们在浏览器输入url完毕后可以点击软键盘右下角的“Go”按键加载url页面:在点击搜索框的时候,点击右下角的searc ...

  7. c++参数传递的三种方式

    一般来说C++中参数传递有三种方式:值传递.指针传递.引用传递 1.值传递——传值 值传递是最常见的一种参数传递的方式,但是对初学者来说也最容易出错.如下例: #include<iostream ...

  8. spring mvc 参数传递的三种方式

    springmvc.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns=" ...

  9. Spring基础05——Spring依赖注入的三种方式

    Spring支持3种依赖注入的方式:属性注入.构造器注入.工厂 1.属性注入 属性注入即通过setter方法注入Bean的属性或依赖的对象.使用<property>元素,使用name属性指 ...

随机推荐

  1. Little Sympathy for Bear Stearns : NPR

    Little Sympathy for Bear Stearns : NPR Little Sympathy for Bear Stearns

  2. linux centos 卸载jdk

    1.先看看OpenJDK的安装包 $ rpm -qa |grep java tzdata-java-2013b-1.el6.noarch java-1.6.0-openjdk-1.6.0.0-1.61 ...

  3. OpenLayers学习笔记4——使用jQuery UI实现測量对话框

    OpenLayers学习最好的方式就是跟着其自带的演示样例进行学习,另外对web前端的开发设计要了解,慢慢积累,这样在一般的小项目中应该是足够用了. 本篇參照量測demo实现对话框形式的量測,抛砖引玉 ...

  4. CentOS 6.5 配置 SSDB 1.8.0

    环境说明: OS:CentOS 6.5  (阿里云ECS) 相关链接: 1.SSDB 下载配置:http://ssdb.io/docs/install.html 2.SSDB 入门文档:http:// ...

  5. build setting

    A build setting is a variable that contains information about how a particular aspect of a product’s ...

  6. python实用小代码

    栈的实现 #!/usr/bin/env python #coding=utf-8 #python version 2.7.4 class stack: def __init__(self,list=N ...

  7. CSS选项卡

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org ...

  8. 【转】C# String.Format数字格式化输出各种转换{0:N2} {0:D2} {0:C2}...

    ; //格式为sring输出 // Label1.Text = string.Format("asdfadsf{0}adsfasdf",a); // Label2.Text = & ...

  9. android选择和裁剪图像拍摄的图像

    转载请注明出处:http://blog.csdn.net/allen315410/article/details/39994913 近期从曾经的项目中扒下来一个经常使用的模块.在这里有必要记录一下的. ...

  10. 简述负载均衡&CDN技术(转)

    曾经见到知乎上有人问“为什么像facebook这类的网站需要上千个工程师维护?”,下面的回答多种多样,但总结起来就是:一个高性能的web系统需要从无数个角度去考虑他,大到服务器的布局,小到软件中某个文 ...