说明:

跳转页面,并将第一页的Edittext输入的数据通过按钮Button传到第二页用Edittext显示,点击第二页的

返回按钮Button返回第一页(改变第二页的Edittext的内容会传至第一页的Edittext显示)

——有返回值的方式

1.给第一页面Edittext和Button设置id

2.设置Button的点击监听

(1)获取view实例,通过Edittext的id找到Edittext

(2)获取内容并转为文本形式

getText().toString()

(3)设置Intent(意图)告诉第二个页面,我要跳转了

Intent in = new Intent(this,excise2.class);

(4)在跳转的同时,通过Intent将输入的文本内容一并存储传过去

in.putExtra("myet",str);

(5)开始跳转 区别普通方式

startActivityForResult(in,1);

3.接受页面用Edittext接收

(1)给接受页面Edittext和Button设置id

(2)创建第二页面

public class excise2 extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.excise2);

(3)接收Intent意图 get

Intent in = getIntent();

(4)取存入的数据 get get

String str = in.getExtras().getString("myet");

(5)显示数据

操作View实例

EditText mytv= ( EditText)findViewById(R.id.jieshouzhi);

恢复输入框里面的内容(设置) set

mytv.setText(str);

4.设置按钮的点击监听

(1)存储返回数据 也要用Intent

EditText ett = (EditText)findViewById(R.id.jieshouzhi);

(2)设置返回数据

先设置ResultCode,再设置存储数据的意图

Intent in = new Intent();

setResult(RESULT_OK,in.putExtra("mytv",ett.getText().toString()));

(3)关闭

finishi();

5.在第一个页面接收返回的值

(1)重写回调方法

onActivityResult(int requestCode, int resultCode, Intent data)

(2)加判断条件

(3) 先获取返回的信息

String str = data.getExtras().getString("mytv");

(4)显示

EditText ett = (EditText)findViewById(R.id.ett);

5)传值 设置 set

ett.setText(str);

excise1.xml

<EditText
android:layout_width="200dp"
android:layout_height="wrap_content"
android:textSize="40dp"
android:id="@+id/ett"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="传值至第三页"
android:textSize="40dp"
android:id="@+id/chuanzhi"
android:layout_marginTop="100dp"
android:onClick="clickcz"
/>

excise1.java

public void  clickcz(View view)
{
//Toast静态方法 直接用类名调用,不需要实例化
//构建了Toast方法 实例方法调用 方法链
Toast.makeText(this,"这是鼠标点击监听触发的",Toast.LENGTH_LONG).show(); //取得要传递的信息
//获取View实例
EditText ett = (EditText)findViewById(R.id.ett);
//获取内容
String str = ett.getText().toString();
//跳转用意图
Intent in = new Intent(this,excise2.class);
//存储内容 通过Intent
//Extra 扩展 实际上是一个HashMap,进行限制 putExtra 是一个bundle
in.putExtra("myet",str);
//开始跳转 无返回值的写法
//startActivity(in); //开始跳转 有返回值的写法
//启动方式,有返回值
//第一个参数 intent
//第二个参数 requestCode 请求码
startActivityForResult(in,1); }
//处理返回信息的监听(回调方法)
//监听所有返回信息的
//必须要有requestCode区分由哪个请求返回的
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data); if(requestCode ==1)
if(resultCode == RESULT_OK)
{ //先获取返回的信息
String str = data.getExtras().getString("mytv");
//显示
EditText ett = (EditText)findViewById(R.id.ett);
//传值 设置 set
ett.setText(str);
}
else
{
Toast.makeText(this,"返回的内容有错误",Toast.LENGTH_LONG);
}
}

excise2.xml

<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="excise2 第三页"
android:textSize="40dp"
android:id="@+id/jieshouzhi"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="250px"
android:text="带返回值得返回"
android:textSize="40dp"
android:id="@+id/clickec4"
android:onClick="clickec4"/>

excise2.java

package com.example.chenshuai.excise;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText; /**
* Created by chenshuai on 2016/3/20.
*/
public class excise2 extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.excise2); //接受信息 //1.接受传递过来的意图
Intent in = getIntent();
//2.取数据
String str = in.getExtras().getString("myet");
//3.显示在哪里
//操作View实例
EditText mytv= (EditText)findViewById(R.id.jieshouzhi);
//恢复输入框里面的内容(设置) set
mytv.setText(str); }public void clickec4(View v)
{
//存储返回数据 也要用Intent
EditText ett = (EditText)findViewById(R.id.jieshouzhi); //设置返回数据
//先设置ResultCode,再设置存储数据的意图
Intent in = new Intent(); setResult(RESULT_OK,in.putExtra("mytv",ett.getText().toString())); finish();
} }

Android——关于Activity跳转的返回(无返回值和有返回值)——有返回值的更多相关文章

  1. Android的Activity跳转动画各种效果整理

    Android的Activity跳转就是很生硬的切换界面.其实Android的Activity跳转可以设置各种动画,本文整理了一些,还有很多动画效果,就要靠我们发挥自己的想象力 大家使用Android ...

  2. Android之Activity跳转

    简述 如果把每个activity看成一个页面的话,那么activity之间的跳转和页面的之间的跳转基本上是一样的.首先需要监听一个事件,当这个事件发生的时候,就进行跳转.html中有个<a sr ...

  3. android 15 activity跳转

    从一个屏幕跳到另一个屏幕,一个activity跳转到另一个activity,Intent类用于组件之间传递数据和跳转,组件包括不仅activity. package com.sxt.day04_01; ...

  4. android入门,activity跳转,并传递message

    首先是布局文件,如下: activity_main.xml <?xml version="1.0" encoding="utf-8"?> <L ...

  5. android单元测试 activity跳转 以及 input 输入后 测试

    Android junit实现多个Activity跳转测试 分类: Android Junit测试2011-11-14 16:49 1601人阅读 评论(2) 收藏 举报 androidjunitla ...

  6. android之 Activity跳转出现闪屏

    原文:http://blog.csdn.net/az313/article/details/17321549 同一个应用,在不同手机上测试,Activity之间跳转出现闪屏,界面来回跳转…… 查阅网上 ...

  7. Android:activity跳转过渡效果

    放在startActivity(intent);后面 overridePendingTransition(android.R.anim.fade_in,android.R.anim.fade_out) ...

  8. Android课程---Activity 带返回值的跳转

    Activity2.java package com.hanqi.test4; import android.content.Intent; import android.os.Bundle; imp ...

  9. Android课程---Activity的跳转与传值(转自网上)

    Activity跳转与传值,主要是通过Intent类来连接多个Activity,以及传递数据.   Intent是Android一个很重要的类.Intent直译是“意图”,什么是意图呢?比如你想从这个 ...

随机推荐

  1. 共享内存 最快IPC 的原因

    参考 http://www.360doc.com/content/13/0817/11/7377734_307777806.shtml 我的理解,这里指的是用户进程的用户态空间和内核空间,也就是那个3 ...

  2. POJ 2063 Investment 完全背包

    题目链接:http://poj.org/problem?id=2063 今天果然是卡题的一天.白天被hdu那道01背包的变形卡到现在还没想通就不说了,然后晚上又被这道有个不大也不小的坑的完全背包卡了好 ...

  3. PO BO VO DTO POJO DAO 概念及其作用

    PO BO VO DTO POJO DAO 概念及其作用(附转换图) 博客分类: java javadaovopojobo        J2EE开发中大量的专业缩略语很是让人迷惑, 特别是对于刚毕业 ...

  4. [css] 自适应布局 移动端自适应

    一.宽度自适应 三列布局左右固定.中间不固定或者两列布局,左边固定右边不固定 原文链接:http://www.cnblogs.com/2050/archive/2012/07/30/2614852.h ...

  5. VS2013和VS2008项目的互通

    VS2013和VS2008项目的互通,大家可能都查到了百度经验里面的一个帖子: http://jingyan.baidu.com/article/f54ae2fc3c3adc1e92b849de.ht ...

  6. [借鉴] Android简便通用的SimpleBaseAdapter

    public abstract class SimpleBaseAdapter<T> extends BaseAdapter { protected Context context; pr ...

  7. shell如何在指定文件的指定位置后面添加内容

    最近工作中遇到一个问题,想在某个文件的指定位置后面添加一个标志位,要求在shell脚本里实现. 问题说明: 想在sys_config.fex文本的某个字符串后面添加一个flag 例如:sys_conf ...

  8. 屏幕输出VS文件输出

     问题1:我们在编写程序时经常需要数一些数据到屏幕,来查看我们的结果是否正确,虽然直接输出到屏幕,查看起来呢很方便,但当数据量很大时,需要耗费大量的时间.于是我们想到能不能通过输出到文件来减少时间 ...

  9. 【bzoj1023】仙人掌图

    [bzoj1023]仙人掌图 题意 给一棵仙人掌,求直径. \(n\leq 100000\) 分析 分析1:[Tarjan]+[环处理+单调队列优化线性dp]+[树形dp] 分开两种情况处理: ①环: ...

  10. hdu---(1800)Flying to the Mars(trie树)

    Flying to the Mars Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Other ...