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 ...
随机推荐
- 常见Web服务器
常见Web服务器
- zabbix报错整理
1.cannot connect to [[172.16.2.225]:10050]: [113] No route to host 这种一般是网络连接问题 排查:在server上telnet 172 ...
- (3)puppet清单定义资源的语法
1.先看两个例子: a.创建一个文件 file{"/tmp/12567.txt": content => aaaaababbau, ensure => present ...
- python使用制表符或者换行符来添加空白--3
#!/usr/bin/python #coding=utf-8 message="python" print(message) print("\tpython" ...
- 如何在pyqt中实现win10亚克力效果
亚克力效果的实现思路 上一篇博客<如何在pyqt中实现窗口磨砂效果> 中实现了win7中的Aero效果,但是和win10的亚克力效果相比,Aero还是差了点内味.所以今天早上又在网上搜了一 ...
- JFrame 的层次结构 及 背景设置说明
感谢原文:https://blog.csdn.net/qq_32006373/article/details/49659129 一.JFrame 的层次结构 我们通过两个图来说明一下 JFrame 的 ...
- linux 多个C源文件编译
转载请注明来源:https://www.cnblogs.com/hookjc/ 如果有多个源文件,基本上有两种编译方法: [假设有两个源文件为test.c和testfun.c] 1. 多个文件一起编译 ...
- druid 数据源密码加密配置
<!-- 数据源配置 --> <bean id="default" class="com.alibaba.druid.pool.DruidDataSou ...
- JUC并发包学习
1.什么是JUC java.util工具包.包.分类 业务:普通的线程代码 Thread Runable:没有返回值.效率相对于Callable相对较低. 2.线程和进程 进程:一个程序.如:QQ.e ...
- linux13
ansible-playbook实现MySQL的二进制部署 Ansible playbook实现apache批量部署,并对不同主机提供以各自IP地址为内容的index.html http的报文结构和状 ...