返回上一个活动只需要按以下Back键就可以了,并且使用startActivityForResult(),这个方法也是用于启动活动的,而且会返回一个结果给上一个活动。

startActivityForResult()方法接收两个参数,第一个参数是Intent,第二个参数是请求码,用于在之后回调中判断数据的来源。

以下为例子:

首先你需要两个可以互传的Activity ,这里,我们以MainActivity和SecondActivity为例:

MainActivity的Layout如下:<?xml  version="1.0" encoding="utf-8"?>

xmlns:app="http://schemas.android.com/apk/res-auto"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical"

android:background="#ffffff"

tools:context=".MainActivity">

android:id="@+id/edt"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:gravity="top"

android:minLines="3"

android:maxLines="3"

android:textColor="#000000"

android:textSize="20dp"

android:hint="请输入.."

android:textColorHint="#707070"/>

android:id="@+id/btn"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="点击"

android:textSize="15dp"

android:textColor="#000000"/>

android:id="@+id/txt_first"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="变变变"

android:textColor="#000000"

android:textSize="20dp"

android:layout_marginTop="10dp"/>

SecondActivity的Layout如下:<?xml  version="1.0" encoding="utf-8"?>

xmlns:app="http://schemas.android.com/apk/res-auto"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:background="#ffffff"

android:orientation="vertical"

tools:context=".SecondActivity">

android:id="@+id/txt"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:textSize="20dp"

android:textColor="#000000"/>

android:id="@+id/btn_1"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:textSize="20dp"

android:textColor="#000000"

android:text="点吧"

android:layout_marginTop="10dp"/>

接着,我们要让SecondActivity在点击了按钮btn_1之后返回数据到MainActivity:import androidx.annotation.Nullable;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Context;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.EditText;

import android.widget.SearchView;

import android.widget.TextView;

import java.io.BufferedWriter;

import java.io.FileNotFoundException;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.OutputStreamWriter;

public class MainActivity extends AppCompatActivity {

private EditText edt;

private Button btn;

private TextView txt;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

edt = findViewById(R.id.edt);

btn = findViewById(R.id.btn);

txt = findViewById(R.id.txt_first);

btn.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

String data = edt.getText().toString() ;

Intent intent = new Intent(MainActivity.this,SecondActivity.class);

intent.putExtra("extra_data",data);

startActivityForResult(intent,1);

}

});

}

@Override

protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {

super.onActivityResult(requestCode, resultCode, data);

switch(requestCode){

case 1:

if(resultCode == RESULT_OK){

String returnedData = data.getStringExtra("return_data");

txt.setText(returnedData);

}

break;

default:

}

}

}

然后是SecondActivity的代码:import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;

import android.os.Bundle;

import android.util.Log;

import android.view.View;

import android.widget.Button;

import android.widget.TextView;

public class SecondActivity extends AppCompatActivity {

private TextView txt2;

private Button btn_2;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_second);

Intent intent = getIntent();

String data= intent.getStringExtra("extra_data");

txt2 = findViewById(R.id.txt);

btn_2=findViewById(R.id.btn_1);

txt2.setText(data);

btn_2.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

Intent intent = new Intent(SecondActivity.this,MainActivity.class);

intent.putExtra("return_data","This is the return of Second Activity.");

setResult(RESULT_OK,intent);

finish();

}

});

}

}

java怎么返回上一部,如何返回数据给上一个活动相关推荐

  1. 小程序获取上一页的数据修改上一个页面的数据

    小程序获取上一页的数据修改上一个页面的数据 详情地址http://www.xiaoshu168.com/wxapplet/233.html

  2. 网页前端套java数据_【java】网页/移动前端需要的数据,最好一个接口包含所有数据么?...

    前端同事告诉我一个接口需要包含所有的数据,理由是多接口请求,前端逻辑会很复杂,同时如果移动网络有问题的话,容易接口部分成功部分失败,前端处理这些异常情况很费劲,我们使用restful接口,这样的话感觉 ...

  3. 返回数据给上一个活动

    既然可以传递数据给下一个活动,那么能不能够返回数据给上一个活动呢?答案是肯定的.不过不同的是,返回上一个活动只需要按一下Back键就可以了,并没有一个用于启动活动的Intent来传递数据.通过查阅文档 ...

  4. ckeditor富文本编辑器的使用和图片上传,复制粘贴图片上传

    项目开发需要用到在线编辑和图片上传,最终讨论使用ckeditor,原因就是其丰富的API.考虑到最新版本ckeditor5可能不够稳定,我们选择使用ckedtior4.9.2版本.官网链接:ckedi ...

  5. Java框架-SpringMVC的应用(json数据交互、控制器方法返回值、文件上传)

    1. 搭建SpringMVC开发环境 1.1 创建项目,添加依赖 <?xml version="1.0" encoding="UTF-8"?> &l ...

  6. android intent参数是上次的结果,【Android】7.0 Intent向下一个活动传递数据、返回数据给上一个活动...

    1.0 可以利用Intent吧数据传递给上一个活动,新建一个叫"hellotest01"的项目. 新建活动FirstActivity,勾选"Generate Layout ...

  7. 关于使用Java后台导入excel文件,读取数据后,更新数据库,并返回数据给到前端的相关问题总结

    在之前的项目中,使用到了Java后台读取excel文件数据的功能点,本想着该功能点已经做过了,这一类的应该都大差不离,不过在刚结束的一个项目中,现实给我深深的上了一课,特此编写此片博客,以作记录,并给 ...

  8. Java服务器部署基于OpenCV的C++图像处理项目(三)图片上传并返回处理图

    Java服务器部署基于OpenCV的C++图像处理项目(三)图片上传并返回处理图 1.上传图片并返回灰度图功能 由于使用的springboot开发,直接写一个upload接口供图片上传,以下是spri ...

  9. 上传文件返回数据提示下载

    摘要:  最近项目中出现上传文件返回的json数据会被提示下载,只有在ie10+中才会出现这个问题.前端使用jQuery的插件ajaxForm提交表单,后台返回的数据格式为json.代码如下: 后端P ...

最新文章

  1. 2.27 MapReduce Shuffle过程如何在Job中进行设置
  2. 统计学原理-----概率分布
  3. web自动化测试之百度经验-HTTP层面的Web Service自动化测试
  4. Eclipse jar包打不进apk
  5. 音视频技术开发周刊 | 199
  6. access month函数用法_学会了这7个EXCEL日期函数技巧,老板再让你加班,你找我!...
  7. BugkuCTF-Reverse题NoString
  8. Mysql中用between...and...查询日期时注意事项
  9. WPF DataGrid显示图片的一种方法
  10. java 继承 this_java多重继承的this属于谁
  11. Windows注册表内容详解
  12. java输入身高体重计算体脂率_追求健康的体脂率,比追求体重数更有意义:一个公式教你计算...
  13. Python爬取百度图片(高清原图)
  14. Activiti目录(五)驳回、重新发起、取消流程
  15. Android webView 无法加载微信公众号图片
  16. php以大写字母分割,js按大写字母拆分字符串
  17. 直角三角形斜边用计算机怎么算,直角三角形斜边怎么算 计算方法有哪些
  18. QT应用编程: 基于FFMPEG设计的流媒体播放器(播放rtmp视频流)
  19. Android去除对话框边距,去除TextView默认内边距
  20. PostgreSQL 从cmin/cmax到combo cid

热门文章

  1. Profibus-DP智能从站开发过程中若干核心问题的探讨
  2. centos6.5 mysql登陆_centos6.5下mysql无法登陆的问题
  3. 传参:@RequestParam @RequestBody @PathVariable的作用
  4. stm32呼吸灯程序_STM32裸机开发基础篇02点亮LED
  5. 从html富文本中提取纯文本
  6. P2617 Dynamic Rankings 动态主席树
  7. Django Form
  8. P2424 约数和 真丶除法分块
  9. 基于socket编程的多人聊天室
  10. progressDialog 为什么设置了setProgress()方法无反应?