带返回值的开启一个Activity;

原创 2015年07月10日 13:27:41

带返回值的开启一个Activity;
1.在主窗口中开启时,使用startActivityForResult()方法开启
代码如下:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

    button = (Button) findViewById(R.id.button1);

    editText1 = (EditText) findViewById(R.id.editText1);
    editText2 = (EditText) findViewById(R.id.editText2);
    editText3 = (EditText) findViewById(R.id.editText3);

    button.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            Intent intent = new Intent(MainActivity.this,
                    NextActivity.class);

            String str1 = editText1.getText().toString().trim();
            String str2 = editText2.getText().toString().trim();

            intent.putExtra("num1", str1);
            intent.putExtra("num2", str2);
            //开启下一个界面,并调用startActivityForResult函数。1001是requestCode;
            startActivityForResult(intent, 1001);
        }
    });
}

2.在下一个窗口接收数据,并进行运算。将值返回时使用SetResult方法
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 加载资源
setContentView(R.layout.activity_next);
// 绑定控件
button = (Button) this.findViewById(R.id.button1);
editText = (EditText) this.findViewById(R.id.editText1);

    button.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            Intent intent = getIntent();
            String num1String = intent.getStringExtra("num1");

// System.out.println(“–num1=” + num1String);
String num2String = intent.getStringExtra(“num2”);
// System.out.println(“–num2=” + num2String);
int num1 = Integer.parseInt(num1String);
int num2 = Integer.parseInt(num2String);
// int num3 = num1 + num2;
// String num3String = num3 + ” “;
//System.out.println(“–num3=” + num3String);
editText.setText(num1+num2+” “);

            //将值返回到第一个界面,其中1002是resultCode
            intent.putExtra("num3", num1+num2+" ");
            setResult(1002, intent);
        }
    });
}

3.在主窗口中添加onActivityResult方法
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
//注意requestCode 和resultCode 接收的值和第一次放入的值必须一样
if (requestCode == 1001 && resultCode == 1002) {
String num3String = data.getStringExtra(“num3”);
editText3.setText(num3String);
}
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

带返回值的Activity启动

  • 2015年06月18日 14:42
  • 511KB
  • 下载

android获得上一个activity的返回值来设定当前按钮的可按性

每次想去转载别人的文章就不用自己写了,好想这样省事,但是我的yun da

android 获取上一个activity的返回值

activity A和B A 获取数据的activity  B返回数据的activity 点击A上的按钮,在A的textview上显示B中的联系人列表选中的数据 用到baseadapter 1:...

Android利用intent获取Activity返回值

  • 2012年02月09日 16:53
  • 61KB
  • 下载

【黑马Android】(07)多线程下载的原理/开源项目xutils/显示意图/隐式意图/人品计算器/开启activity获取返回值

多线程下载的原理 司马光砸缸,多开几个小水管,抢救小朋友。 import java.io.BufferedReader; import java.io.File; import java.io...
  • waldmer
  • waldmer
  • 2016年04月26日 16:56
  • 3392

android数据传递(二)之activity带返回值的跳转,模拟登陆注册

这篇博客实现的逻辑是带返回值的跳转, 从ActivityA跳转到ActivityB,然后结束ActivityB后带返回值到ActivityA。下图就是运行的结果,模拟登陆注册 Activity...

在Activity中接收另一个Activity的返回值

今天来讲一讲在Activity接收另一个Activity的返回值首先,我们来看准备返回数据的TheAty。打开其布局文件activity_the_aty 添加两个控件 Editext控件是为了让用户输...

Android之旅第三站——活动(Activity)的带返回值的跳转…

有时候在一个Activity活动结束的时候有些数据是需要回传给上一个Activity的,所以这就用到了带返回值的跳转。好比网上论坛的注册,在填写完你的注册信息后,返回登录时很多时候直接填写好你的登录信...

获取Activity返回值

获取子Activity的返回值,一般可以分为以下三个步骤 1、以Sub-Activity的方式启动子Activity 2、设置子Activity的返回值 3、在父Activity中获取返回值 ...

Android--activity获取返回值

写了一个DEMO:短信选择联系人的数据传递 主activity: import android.os.Bundle; import android.app.Activity; import and...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:带返回值的开启一个Activity;
举报原因:
原因补充:

(最多只允许输入30个字)