iis服务器助手广告广告
返回顶部
首页 > 资讯 > 移动开发 >registerForActivityResult()方法的简单理解和使用
  • 903
分享到

registerForActivityResult()方法的简单理解和使用

androidjavaandroidstudio 2023-09-05 21:09:31 903人浏览 八月长安
摘要

最近学到了reGISterForActivityResult,简单理解一下: 1、使用registerForActivityResult为获取到的结果注册结果回调,但其本身不会启动intent跳转 2

最近学到了reGISterForActivityResult,简单理解一下:
1、使用registerForActivityResult为获取到的结果注册结果回调,但其本身不会启动intent跳转
2、registerForActivityResult最后会返回一个ActivityResultLauncher对象用于启动intent跳转
3、registerForActivityResult第一个参数是ActivityResultContracts,除了通用的StartActivityForResult,还有TakePicture(拍照)、RequestPermission(请求单个权限)、PickContact(从通讯录获取联系人)等预定义好的contract
4、第二个参数中的onActivityResult() 方法用于处理获取到的数据结果

深入理解参考以下两篇文章:
https://www.cnblogs.com/–here–gold–you–want/p/14841024.html
http://www.icodebang.com/article/264591

SecondActivity的数据返回给FirstActivity,代码如下:

一、FirstActivity.java
public class FirstActivity extends AppCompatActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        //该方法要放在onCreate里面,不能放在监听器里        ActivityResultLauncher launcher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback<ActivityResult>() {            @Override            public void onActivityResult(ActivityResult result) {                if(result.getResultCode() == Activity.RESULT_OK){                    Log.d("data_return", result.getData().getStringExtra("data_return"));                }            }        });        Button button1 = (Button) findViewById(R.id.button_1);        button1.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View view) {                Intent intent = new Intent(FirstActivity.this,SecondActivity.class);                launcher.launch(intent);//启动intent跳转            }        });    }}
二、SecondActivity.java
public class SecondActivity extends AppCompatActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_second);        Button button2 = (Button) findViewById(R.id.button_2);        button2.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View view) {                Intent intent = new Intent();                intent.putExtra("data_return","the data of returning to FirstActivity");                setResult(RESULT_OK,intent);                finish();            }        });    }}

来源地址:https://blog.csdn.net/weixin_50822129/article/details/127644130

--结束END--

本文标题: registerForActivityResult()方法的简单理解和使用

本文链接: https://www.lsjlt.com/news/396195.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • registerForActivityResult()方法的简单理解和使用
    最近学到了registerForActivityResult,简单理解一下: 1、使用registerForActivityResult为获取到的结果注册结果回调,但其本身不会启动intent跳转 2...
    99+
    2023-09-05
    android java android studio
  • Android:IdleHandler的简单理解和使用
    IdleHandler的简单理解和使用 1、IdleHandler 是什么2、IdleHandler 使用方式2.1、添加和删除2.2、执行 3、常见问题和使用场景3.1、使用场景3.2、...
    99+
    2023-09-12
    android java 链表
  • session.setAttribute()和session.getAttribute()的简单理解和用法
    简单理解: B/S架构中,客户端与服务器连接,在服务端就会自动创建一个session对象. session.setAttribute(“username”,username); 是将username保存在session中,session的...
    99+
    2023-10-28
    servlet 服务器 java
  • java中反射和注解的简单使用方法
    目录什么反射?Java反射机制提供的功能反射相关的主要APIClass 类获取Class 类的实例( 四种方法)哪些类型可以有Class 对象?演示Class类的常用方法有了Clas...
    99+
    2024-04-02
  • 详解Navicat简单使用方法
    Navicat是一款用于数据库管理的工具,支持多种数据库系统,如MySQL、Oracle、SQL Server等。下面是Navicat的简单使用方法:1. 下载和安装Navicat:首先,从Navicat官方网站下载适用于你的操作系统的...
    99+
    2023-08-09
    Navicat
  • request.getParameter()方法的简单理解与运用
    简单解释:   (1)request.getParameter () 取得是通过容器的实现来取得通过类似post,get等方式传入的数据,request.setAttribute ()和getAttribute ()只是在web容器内部流转...
    99+
    2023-09-30
    servlet java html
  • Vuejs的简单使用方法
    这篇文章主要介绍“Vuejs的简单使用方法”,在日常操作中,相信很多人在Vuejs的简单使用方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Vuejs的简单使用方法”的疑惑...
    99+
    2024-04-02
  • 简单了解Java方法的定义和使用实现
    目录什么是方法?方法的定义2021.6.2 方法的重载(重要笔试可能遇到)命令行传参2021.6.3可变参数(也叫不定项参数)递归(重要,不推荐使用)2021.6.5什么是数组数组声...
    99+
    2024-04-02
  • docker-compose简单使用方法详解
    目录Compose介绍一、前置条件二、使用方法三、测试Compose介绍 Docker Compose是一个用来定义和运行复杂应用的Docker工具。一个使用Docker容器的应用,...
    99+
    2022-11-13
    docker compose使用 docker compose
  • Android简单使用PopupWindow的方法
    本文实例为大家分享了Android简单使用PopupWindow的的具体代码,供大家参考,具体内容如下 思路 1.在res下面创建一个menu文件夹,并新建一个xml文件作为Poup...
    99+
    2024-04-02
  • Qt Designer的简单使用方法
    在前面两节的例子中,主界面窗口的尺寸和标签控件显示的矩形区域等,都是用 C++ 代码编写的。窗口和控件的尺寸都是预估的,控件如果多起来,那就不好估计每个控件合适的位置和大小了。 用 ...
    99+
    2024-04-02
  • 使用java模拟简单的tomcat的方法详解
    我们现在已经会使用tomcat了,但tomcat具体的原理还很模糊,下面我们使用java来简单模拟一下tomcat,实现游览器访问8888端口,然后得到一个网页进行展示。注意:这只是...
    99+
    2024-04-02
  • Python [::-1]的简单理解与用法
    从结果上来看,[::-1]的作用是对列表进行翻转,比方说: a = [1, 2, 3, 4, 5]print(a[::-1])b = "12345"print(b[::-1]) 输出: [5, 4, ...
    99+
    2023-09-02
    划水
  • SpringBootAdmin的简单使用的方法步骤
    目录一、快速入门1.1 SpringBoot Admin服务端的搭建1.2 SpringBootAdmin client端搭建1.3 效果展示二、安全性2.1 admin-serve...
    99+
    2024-04-02
  • require.js使用方法的简单代码讲解笔记
    目录目的:基本API第一步:a.js定义第二步:引入这个模块加载文件页面需要加载多个js文件时,加载时浏览器会停止网页渲染,加载文件越多,网页失去响应的时间就会越长;由于js文件之间...
    99+
    2022-12-17
    require.js
  • es6中some和every方法使用简单示例
    目录1、some方法举例如下图所示:2、every方法举例:3、回调函数没有(主动)返回4、特殊情况总结一下,有三个重要的点:文章略长,但比较简单。 es6中的数组方法some()和...
    99+
    2023-05-14
    es6 every some es6的some方法 es6 every方法
  • python调用kubernetesAPI简单使用方法
    前言: K8s也提供API接口,提供这个接口的是管理节点的apiserver组件,apiserver服务负责提供HTTP API,以便用户、其他组件相互通信。客户端库 安装 pip ...
    99+
    2024-04-02
  • swiper在vue中的简单使用方法
    本次使用的是 swiper5,swiper 不同版本在使用 的过程会有一些差别 说明:本次示例中 skuImageList 是图片列表,由父组件从服务器获取然后传给这个轮播子组件使...
    99+
    2024-04-02
  • SpringBoot中使用Swagger的超简单方法
    Swagger号称世界上最流行的Api框架,它是RestFul 风格的Api。文档在线自动生成工具:Api文档与API定义同步更新。可以直接运行,能在线测试API接口;支持多种编程语...
    99+
    2024-04-02
  • Android传感器的简单使用方法
    本文实例为大家分享了Android传感器简单使用的具体代码,供大家参考,具体内容如下 1. SensorManager类 SensorManager类用来管理各个传感器:通过Sens...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作