startActivityForResult跳转后回调数据
从AActivity向BActivity跳转后,关闭BActivity并向AActivity回调一些数据:
建立AActivity.java文件:
1 public class AActivity extends AppCompatActivity {
2 private Button btnJump;
3 @Override
4 protected void onCreate(Bundle savedInstanceState) {
5 super.onCreate(savedInstanceState);
6 setContentView(R.layout.activity_aactivity);
7 btnJump=findViewById(R.id.jump);
8 btnJump.setOnClickListener(new View.OnClickListener() {
9 @Override
10 public void onClick(View view) {
11 //数据传递
12 Intent intent=new Intent(AActivity.this,BActivity.class);
13 Bundle bundle=new Bundle();
14 bundle.putString("name","霉霉");
15 bundle.putInt("age",30);
16 intent.putExtras(bundle);
17 //返回数据
18 startActivityForResult(intent,0);//向BActivity跳转
19
20 }
21 });
22 }
23
24 @Override
25 protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
26 super.onActivityResult(requestCode, resultCode, data);
27 Toast.makeText(AActivity.this, data.getExtras().getString("title"), Toast.LENGTH_SHORT).show();
28 }//接收BActivity回调的数据
29 }
对应的activity_aactivity.xml文件为:
1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
2 android:layout_width="match_parent"
3 android:layout_height="match_parent"
4 android:orientation="vertical"
5 android:padding="20dp">
6
7 <Button
8 android:id="@+id/jump"
9 android:layout_width="match_parent"
10 android:layout_height="50dp"
11 android:text="jump"
12 android:textAllCaps="false"/>
13 </LinearLayout>
建立BActivity.java文件:
1 public class BActivity extends AppCompatActivity {
2 private TextView TVtitle2;
3 private Button btnFinish;
4 @Override
5 protected void onCreate(Bundle savedInstanceState) {
6 super.onCreate(savedInstanceState);
7 setContentView(R.layout.activity_bactivity);
8 TVtitle2=findViewById(R.id.tv_title2);
9 btnFinish=findViewById(R.id.btn_finish);
10
11 Bundle bundle=getIntent().getExtras();
12 String name=bundle.getString("name");
13 int age=bundle.getInt("age");//传递数据
14
15 TVtitle2.setText(name+":"+age);
16
17 btnFinish.setOnClickListener(new View.OnClickListener() {
18 @Override
19 public void onClick(View view) {
20 Intent intent=new Intent();
21 Bundle bundle1=new Bundle();
22 bundle1.putString("title","I'm back!!");
23 intent.putExtras(bundle1);
24 setResult(Activity.RESULT_OK,intent);
25 finish();//关闭BActivity文件并回调数据
26 }
27 });
28 }
29 }
对应的activity_bactivity.xml文件:
1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
2 android:layout_width="match_parent"
3 android:layout_height="match_parent"
4 android:orientation="vertical"
5 android:padding="20dp">
6 <TextView
7 android:id="@+id/tv_title2"
8 android:layout_width="wrap_content"
9 android:layout_height="wrap_content"
10 android:textColor="@color/black"
11 android:textSize="20sp"
12 android:layout_margin="20dp" />
13
14 <Button
15 android:id="@+id/btn_finish"
16 android:layout_width="match_parent"
17 android:layout_height="wrap_content"
18 android:text="点我回调数据"/>
19 </LinearLayout>
startActivityForResult跳转后回调数据的更多相关文章
- jsp 页面跳转后修改数据,返回时不更新
项目jsp页面上用隐藏input框接收获取数据,在跳转入另一页面前,js操作修改数据,但返回时发现无效. 需求是点击抽奖后机会减少一次,但是当做跳转操作后返回时,次数有缓存问题 jsp: <in ...
- model,map,MapAndVivew用于页面跳转时候使用的即跳转后才添加属性 这样再回调中无法使用 因为回调的前提是页面不调转;解决的方法是用responsewrite(普通的字符响应)
model,map,MapAndVivew用于页面跳转时候使用的即跳转后才添加属性 这样再回调中无法使用 因为回调的前提是页面不调转:解决的方法是用responsewrite
- 利用js对象将iframe数据缓存, 实现子页面跳转后, 返回时不丢失之前填写的数据
利用js对象将iframe数据缓存, 实现子页面跳转后, 返回时不丢失之前填写的数据 实现描述:将数据存放在js对象中, 然后放在父页面的document对象中, 在页面刷新的时候将父页面的值取出来, ...
- Android Activity间跳转与传递数据
1 概述 Activity之间的跳转主要使用 startActivity(Intent intent); startActivityForResult(Intent intent,int reques ...
- Intent界面跳转与传递数据
Activity跳转与传值,主要是通过Intent类,Intent的作用是激活组件和附带数据. intent可以激活Activity,服务,广播三类组件. 本博文讲的是显示意图激活Activity组件 ...
- 获取经过跳转后的url地址
粗略一算,不写code已经好几个月了. 昨日受兄弟所托,为他写了一个小小的程序. 程序功能: 自动获取跳转后的Url地址 如下图所示: (newUrl.txt为转换后的地址信息...) 实现过程: 每 ...
- Android基础之——startActivityForResult启动界面并返回数据,上传头像
在android应用的开发过程中,常常会出现启动一个界面后填写部分内容后带着数据返回启动前的界面,最典型的应用就是登录过程.在非常多应用程序的模块中,都有"我的"这个模块,在未登录 ...
- 解决微信小程序使用switchTab跳转后页面不刷新的问题
wx.switchTab({ url: '../index/index', success: function(e) { var page = getCurrentPages().pop(); if ...
- FFMPEG结构体分析:AVFrame(解码后的数据)
https://blog.csdn.net/jxcr1984/article/details/52766524 本文转自: http://blog.csdn.net/leixiaohua1020/ar ...
随机推荐
- springmvc请求处理过程
springmvc请求的处理流程 1)发起some.do 2)tomcat(web.xml-----url-pattern知道*.do的请求给DispatcherServlet) 3)Dispatch ...
- (1)puppet安装
简介: 基于C/S架构的Puppet更新方式一般有两种,一种是Agent端设置同步时间主动去PuppetMaster端拉取配置,另一种是通过PuppetMaster端使用puppet kick命令或者 ...
- log4j学习记录以及相关配置(精简版)
使用log4j时关键配置 log4j的maven依赖 <dependency> <groupId>log4j</groupId> <artifactId> ...
- linux字符编码防止乱码
一:linux字符编码 en_US.UTF-8 : 美式英文,utf-8 zh_CN.UTF-8 临时优化 export LANG=zh_CN.UTF-8 : 设置编码 永久优化 vim /etc/l ...
- kubernetes之部署dashboard 和heapster
部署dashboard之前,先确保traefik https方式部署成功,这样就可以通过 https 域名的方式访问dashboard,无需kube-proxy转发了.假设traefik-ingres ...
- 学习JAVAWEB第十二天
## Servlet: 1. 概念 2. 步骤 3. 执行原理 4. 生命周期 5. Servlet3.0 注解配置 6. Servlet的体系结构 Servlet -- 接口 | GenericSe ...
- Pycharm 实现保存时修正格式(format_on_save)
前言 VSCODE是近年来备受欢迎的轻量级代码编辑器,有一项非常实用功能--保存时修正代码格式(formatonsave) Pycharm作为一款IDE,虽然本身不具备此功能,但通过几个并不复杂的设置 ...
- Serverless Workflow项目
维基百科对工作流的定义是:对工作流程及其各操作步骤之间业务规则的抽象.概括描述.我们认为工作流的主要职责是: 保证结果一致性,提高容错性要求:对错误重试,捕获,执行回滚或补偿逻辑 为长时间运行的流程维 ...
- java的装箱和拆箱详解
========================================================================================= 在我看来,学习jav ...
- [ACM]Link-Cut Tree实现动态树初探
动态树问题是指的一类问题,而不是具体指的某一种数据结构.它主要维护一个包含若干有根树的森林,实现对森林的修改和查询等. 实现动态树的数据结构据说主要有4种,Link-Cut Tree是其中的一种.Li ...