一起来看看 Compose Accompanist

image.png

好久不见,真的挺久了,之前一个月写的文章比现在多半年的都多。今年第一篇文章是简单写了下 Android 14 的适配:Android 14 又来了?别扶!抬起我来吧!

今天咱们来一起看看 Compose Accompanist 吧!

什么是 Compose Accompanist

首先来看下官方的解释吧!

Accompanist is a group of libraries that aim to supplement Jetpack Compose with features that are commonly required by developers but not yet available.

很简单,Accompanist 是一组库,旨在为 Compose 提供开发人员通常需要但尚未可用的功能。

不得不说,Google 是挺会起名字的,Accompanist 翻译过来是伴奏者,那么谁是作曲者呢?显而易见 Compose 就是作曲者了!Compose 作曲,Accompanist 来伴奏,挺好!

光这样看这个库很好啊!帮助大家更好地使用 Compose ,但真的是这样么?咱们接着往下看:

Accompanist is a labs like environment for new Compose APIs. We use it to help fill known gaps in the Compose toolkit, experiment with new APIs and to gather insight into the development experience of developing a Compose library. The goal of these libraries is to upstream them into the official toolkit, at which point they will be deprecated and removed from Accompanist.

吓人不?有可能用着用着就废弃了。。。。不过也是一个好事,相当于这些需要使用的库都变为了正式版本,从这里废弃后就直接放到了 Compose 的库里了,就是咱们都不需要另外进行引用依赖了。

演奏中的曲子

好了,下面来看下 Accompanist 都怎么帮助 Compose 完成一部优秀曲子吧!

  • System UI Controller :方便大家对状态栏、导航栏的控制
  • AppCompat Theme Adapter :可以重用 AppCompat XML主题,用于在 Compose 中进行主题化
  • Material Theme Adapter :可以重用 Material 2 XML 主题,用于在 Compose 中进行主题化
  • Material 3 Theme Adapter :可以重用 Material 3 XML 主题,用于在 Compose 中进行主题化
  • Permissions :一个为Compose 提供运行时权限支持的库
  • Navigation-Material :为 Navigation 提供 Material 支持,例如 bottom sheets
  • Drawable Painter :提供了一种使用 Drawables 作为 Compose painter 的方法
  • Web :用于在 Compose 中支持基本的 WebView
  • Adaptive :为自适应布局提供实用程序集合的库
  • Test Harness :用于测试 Compose 布局的库

上面这些就是目前 Accompanist 还未废弃的库,其实也没剩几个了。。。

演奏完成的曲子

演奏中的曲子还在演奏,大家也还可以继续使用,接下来看下已经演奏完成的曲子吧!虽然已经演奏完成,但也可以用来学习他们演奏的手法及技巧!

  • Swipe to Refresh (Deprecated) :顾名思义,用于下拉刷新的库
  • Pager (Deprecated) :可以让大家在 Compose 中使用类似 ViewPager 的库
  • Flow Layouts (Deprecated):流布局
  • Navigation-Animation (Deprecated):为 Nagation 提供动画,比如淡入淡出、滑入滑出等等
  • Placeholder (Deprecated):用于在加载内容时显示占位符UI
  • Insets (Deprecated & Removed):使用 IME

其实演奏完成的库之前我都用过,还是挺好的,但是车轮总是向前走的,实验性的 API 肯定还是 Release 后更好!

Accompanist 的全部代码都放在了 Github 中,地址为:https://github.com/google/accompanist

大家可以去 Github 中下载代码学习学习,当然也可以在线看,Github 现在的在线预览代码还是很舒服的!

image-20230808135004567.png

演出完成

OK,今天的演出到这就结束了,准备写一个系列,把 Accompanist 中的库一个一个都说一说,聊一聊,还可以再聊一聊我之前使用过,但是现在已经废弃的库,现在应该如何迁移,或者说现在库废弃了应该如何使用这个功能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/27336.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

docker菜谱

DockerHub:https://hub.docker.com/ 记录docker常用软件安装,欢迎大家投稿。😎😎😎 文章目录 1. Redis 1. Redis 1、下载redis镜像: docker pull redis:6.2.8 docker pull redis:7.0.02、启动容器&#x…

DAY02_Spring—第三方资源配置管理Spring容器Spring注解开发Spring整合Mybatis和Junit

目录 一 第三方资源配置管理1 管理DataSource连接池对象问题导入1.1 管理Druid连接池1.2 管理c3p0连接池 2 加载properties属性文件问题导入2.1 基本用法2.2 配置不加载系统属性2.3 加载properties文件写法 二 Spring容器1 Spring核心容器介绍问题导入1.1 创建容器1.2 获取bean…

sigmoid ReLU 等激活函数总结

sigmoid ReLU sigoid和ReLU对比 1.sigmoid有梯度消失问题:当sigmoid的输出非常接近0或者1时,区域的梯度几乎为0,而ReLU在正区间的梯度总为1。如果Sigmoid没有正确初始化,它可能在正区间得到几乎为0的梯度。使模型无法有效训练。 …

TCP和UDP

目录 TCP和UDP是什么? TCP和UDP有什么区别? 三次握手和四次挥手 TCP维护可靠的通信方式 拥塞控制 滑动窗口的原理 什么是粘包以及粘包的原因 粘包的处理方式 TCP和UDP使用场景 TCP和UDP是什么? TCP: 传输控制协议(TCP&am…

什么是框架

框架(Framework)是一个框子——指其约束性,也是一个架子——指其支撑性。 IT语境中的框架,特指为解决一个开放性问题而设计的具有一定 性的支撑结构。在此结构上约束可以根据具体问题扩展、安插更多的组成部分,从而更迅…

idol!! 2023牛客暑期多校训练营6 C

登录—专业IT笔试面试备考平台_牛客网 题目大意&#xff1a;定义n!!等于与n的奇偶性相同的所有小于等于n的数的阶乘之和&#xff0c;问n!!的末尾有多少0 1<n<1e18 思路&#xff1a;因为末尾0的来源是2*5&#xff0c;而2的个数明显比5的个数多得多&#xff0c;所以末尾…

git仓库大文件导致仓库体积增大处理

一、删除大文件 git filter-branch --tree-filter rm -rf path/to/large/file --prune-empty HEAD二、提交到远程 git push -f origin main PS&#xff1a;-f必须参数&#xff0c;强制刷新PS&#xff1a;git设计是为了存储代码&#xff0c;一般不将大文件上传到仓库

HarmonyOS元服务开发实践:桌面卡片字典

一、项目说明 1.DEMO创意为卡片字典。 2.不同卡片显示不同内容&#xff1a;微卡、小卡、中卡、大卡&#xff0c;根据不同卡片特征显示同一个字的不同内容&#xff0c;基于用户习惯可选择喜欢的卡片。 3.万能卡片刷新&#xff1a;用户点击卡片刷新按钮查看新内容&#xff0c;同时…

车载以太网SOME/IP的个人总结

如何实现CAN-SOME/IP通信路由测试 (qq.com) AutoSAR SOMEIP与SOC vsomeip通讯 (qq.com) 利用commonAPI和vSomeip对数据进行序列化 (qq.com) Vector - CANoe - VCDL与SomeIP (qq.com) 使用Wireshark 查看SOMEIP的方法 (qq.com) 基于AutoSAR的车载以太网测试 - SOMEIP之ECU做…

Java课题笔记~ AspectJ 的开发环境(掌握)

AspectJ 的开发环境(掌握) &#xff08;1&#xff09; maven 依赖 <dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></depe…

深度学习和OpenCV的对象检测(MobileNet SSD图像识别)

基于深度学习的对象检测时,我们主要分享以下三种主要的对象检测方法: Faster R-CNN(后期会来学习分享)你只看一次(YOLO,最新版本YOLO3,后期我们会分享)单发探测器(SSD,本节介绍,若你的电脑配置比较低,此方法比较适合R-CNN是使用深度学习进行物体检测的训练模型; 然而,…

docker compose快速编排

Docker-compose概述 Docker-Compose项目是Docker官方的开源项目&#xff0c;负责实现对Docker容集群的快速编排 Docker-Compose将所管理的容器分为三层&#xff0c;分别是工程&#xff08;project&#xff09;&#xff0c;服务&#xff08;service&#xff09;以及容器&#x…

项目实战 — 消息队列(4){消息持久化}

目录 一、消息存储格式设计 &#x1f345; 1、queue_data.txt&#xff1a;保存消息的内容 &#x1f345; 2、queue_stat.txt&#xff1a;保存消息的统计信息 二、消息序列化 三、自定义异常类 四、创建MessageFileManger类 &#x1f345; 1、约定消息文件所在的目录和文件名…

探索CSS计数器:优雅管理网页元素的计数与序号

113. 探索CSS计数器&#xff1a;优雅管理网页元素的计数与序号 在前端开发中&#xff0c;我们经常需要对网页元素进行计数与序号&#xff0c;如有序列表、表格行号、步骤指示等。为了优雅地管理这些计数与序号&#xff0c;CSS提供了一种强大的功能&#xff1a;CSS计数器&#…

1759. 统计同质子字符串的数目(java)

统计同质子字符串的数目 统计同质子字符串的数目题目描述双指针解题代码演示 回溯算法 统计同质子字符串的数目 难度 - 中等 1759. 统计同质子字符串的数目 题目描述 给你一个字符串 s &#xff0c;返回 s 中 同质子字符串 的数目。由于答案可能很大&#xff0c;只需返回对 109…

掌握 JVM 调优命令

常用命令 1、jps查看当前 java 进程2、jinfo实时查看和调整 JVM 配置参数3、jstat查看虚拟机统计信息4、jstack查看线程堆栈信息5、jmap查看堆内存的快照信息 JVM 日常调优总结起来就是&#xff1a;首先通过 jps 命令查看当前进程&#xff0c;然后根据 pid 通过 jinfo 命令查看…

MemFire教程|FastAPI+MemFire Cloud+LangChain开发ChatGPT应用-Part2

基本介绍 上篇文章我们讲解了使用FastAPIMemFire CloudLangChain进行GPT知识库开发的基本原理和关键路径的代码实现。目前完整的实现代码已经上传到了github&#xff0c;感兴趣的可以自己玩一下&#xff1a; https://github.com/MemFire-Cloud/memfirecloud-qa 目前代码主要…

ffmpeg源码编译成功,但是引用生成的静态库(.a)报错,报错位置在xxx_list.c,报错信息为某变量未定义

背景&#xff1a;本文是对上一个文章的补充&#xff0c;在源码编译之前&#xff0c;项目是有完整的ffmpeg编译脚本的&#xff0c;只不过新增了断点调试ffmpeg&#xff0c;所以产生的上面的文章&#xff0c;也就是说&#xff0c;我在用make编译成功后&#xff0c;再去做的源码编…

Jenkins+Nginx+vue

安装nodejs 在这里插入图片描述 echo off xcopy C:\ProgramData\Jenkins\.jenkins\workspace\super_manage_vue\dist F:\java\www\super_manage_vue\ /s /e /y echo 复制文件完成 exit安装niginx 配置文件如下 #user nobody; worker_processes 1;#error_log logs/error.lo…

4、长度最小的子数组

找到一个数组中&#xff0c;有多少个连续元素的和小于某个值&#xff0c;求出连续元素的长度的最小值。 滑动窗口法&#xff1a; 其本质也是快慢指针&#xff0c;一个指针指向窗口的起始位置&#xff0c;另一个指针指向窗口的终止位置。 1.定义快慢指针&#xff1a; 2.更新慢指…