zoukankan      html  css  js  c++  java
  • 使用Intent返回数据(返回到上一Activity)

    MainActivity.java

     1 package com.example.returnresult;
     2 
     3 import android.os.Bundle;
     4 import android.view.View;
     5 import android.widget.Button;
     6 import android.widget.EditText;
     7 import android.app.Activity;
     8 import android.content.Intent;
     9 
    10 public class MainActivity extends Activity {
    11 
    12     private EditText num1, num2, result;
    13     private Button button;
    14     private final static int REQUESTCODE = 1;// 返回的结果码
    15 
    16     protected void onCreate(Bundle savedInstanceState) {
    17         super.onCreate(savedInstanceState);
    18         setContentView(R.layout.activity_main);
    19 
    20         num1 = (EditText) this.findViewById(R.id.num1);
    21         num2 = (EditText) this.findViewById(R.id.num2);
    22         result = (EditText) this.findViewById(R.id.result);
    23         button = (Button) this.findViewById(R.id.count);
    24 
    25         button.setOnClickListener(new View.OnClickListener() {
    26 
    27             public void onClick(View v) {
    28                 int i1 = Integer.parseInt(num1.getText().toString());
    29                 int i2 = Integer.parseInt(num2.getText().toString());
    30                 Intent intent = new Intent(MainActivity.this, Other.class);
    31                 intent.putExtra("i1", i1);
    32                 intent.putExtra("i2", i2);
    33                 startActivityForResult(intent, REQUESTCODE);// 表示可以返回结果
    34 
    35             }
    36         });
    37     }
    38 
    39     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    40         // TODO Auto-generated method stub
    41         super.onActivityResult(requestCode, resultCode, data);
    42         if (resultCode == 2) {
    43             if (requestCode == REQUESTCODE) {
    44                 int three = data.getIntExtra("three", 0);
    45                 result.setText(String.valueOf(three));
    46             }
    47         }
    48     }
    49 }
    Other.java
     1 package com.example.returnresult;
     2 
     3 import android.app.Activity;
     4 import android.content.Intent;
     5 import android.os.Bundle;
     6 import android.view.View;
     7 import android.widget.Button;
     8 import android.widget.EditText;
     9 import android.widget.TextView;
    10 
    11 public class Other extends Activity {
    12 
    13     private Button button;
    14     private TextView textView;
    15     private EditText editText;
    16     @Override
    17     protected void onCreate(Bundle savedInstanceState) {
    18         // TODO Auto-generated method stub
    19         super.onCreate(savedInstanceState);
    20         setContentView(R.layout.other);
    21         button = (Button)this.findViewById(R.id.rt);
    22         textView = (TextView)this.findViewById(R.id.msg);
    23         editText = (EditText)this.findViewById(R.id.three);
    24         Intent intent = getIntent();
    25         int a = intent.getIntExtra("i1", 0);
    26         int b = intent.getIntExtra("i2", 0);
    27         textView.setText(a+" + "+b+" = "+" ? ");
    28         button.setOnClickListener(new View.OnClickListener() {
    29             @Override
    30             public void onClick(View v) {
    31                 // TODO Auto-generated method stub
    32                Intent intent = new Intent();
    33                int three = Integer.parseInt(editText.getText().toString());
    34                intent.putExtra("three", three);
    35                //通过Intent对象返回结果,setResult方法,
    36                setResult(2, intent);
    37                finish();//结束当前的Activity的生命周期。
    38             }
    39         });
    40     }
    41 }
    MainActivity.xml
     1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     2     xmlns:tools="http://schemas.android.com/tools"
     3     android:layout_width="fill_parent"
     4     android:layout_height="fill_parent"
     5     android:orientation="vertical"
     6     tools:context=".MainActivity" >
     7 
     8     <LinearLayout
     9         xmlns:tools="http://schemas.android.com/tools"
    10         android:layout_width="fill_parent"
    11         android:layout_height="wrap_content"
    12         android:orientation="horizontal" >
    13 
    14         <EditText
    15             android:id="@+id/num1"
    16             android:layout_width="95dp"
    17             android:layout_height="wrap_content"
    18             android:inputType="number" />
    19 
    20         <TextView
    21             android:id="@+id/plus"
    22             android:layout_width="wrap_content"
    23             android:layout_height="wrap_content"
    24             android:text="@string/plus" />
    25 
    26         <EditText
    27             android:id="@+id/num2"
    28             android:layout_width="95dp"
    29             android:layout_height="wrap_content"
    30             android:inputType="number" />
    31 
    32         <TextView
    33             android:id="@+id/equal"
    34             android:layout_width="wrap_content"
    35             android:layout_height="wrap_content"
    36             android:text="@string/equal" />
    37         <EditText
    38             android:id="@+id/result"
    39             android:layout_width="95dp" 
    40             android:layout_height="wrap_content"
    41             android:inputType="number"
    42             />
    43     </LinearLayout>
    44 
    45     <Button
    46         android:id="@+id/count"
    47         android:layout_width="match_parent"
    48         android:layout_height="wrap_content"
    49         android:text="@string/计算结果" >
    50     </Button>
    51 
    52 </LinearLayout>
    Other.xml
     1 <?xml version="1.0" encoding="utf-8"?>
     2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     3     android:layout_width="fill_parent"
     4     android:layout_height="fill_parent"
     5     android:orientation="vertical" >
     6 
     7     <LinearLayout
     8         xmlns:android="http://schemas.android.com/apk/res/android"
     9         android:layout_width="fill_parent"
    10         android:layout_height="wrap_content"
    11         android:orientation="vertical" >
    12 
    13         <TextView
    14             android:id="@+id/msg"
    15             android:layout_width="match_parent"
    16             android:layout_height="wrap_content" >
    17         </TextView>
    18 
    19         <EditText
    20             android:id="@+id/three"
    21             android:layout_width="match_parent"
    22             android:layout_height="wrap_content"
    23             android:inputType="number" >
    24         </EditText>
    25     </LinearLayout>
    26 
    27     <Button
    28         android:id="@+id/rt"
    29         android:layout_width="match_parent"
    30         android:layout_height="wrap_content"
    31         android:text="@string/rt" >
    32     </Button>
    33 
    34 </LinearLayout>
  • 相关阅读:
    信号实现父子进程之间的同步sigsuspend的作用
    java中四种操作(DOM、SAX、JDOM、DOM4J)xml方式详解与比较
    [置顶] iOS学习笔记45—本地通知UILocalNotification
    没有母亲的母亲节似乎来得早一些
    poj 2007 Scrambled Polygon(凸多边形顶点输出)
    MySQL架构设计相关的方式方法和软件介绍
    1、单机运行环境搭建之 --CentOS6.9安装配置JDK7
    更改root密码一例
    3、单机运行环境搭建之 --CentOS6.5安装配置Tengine
    Tomcat7 安装使用及jvm连接数参数调优
  • 原文地址:https://www.cnblogs.com/humanchan/p/3020831.html
Copyright © 2011-2022 走看看