Jetpack Compose
文章平均质量分 88
FunnySaltyFish
诶?签名?
展开
-
Jetpack Compose 自定义绘制——高仿Keep周运动数据页面
废话之前先上图吧,如果不是有人告诉,你可以一眼看出哪个是真哪个是假吗?仿制整个页面(仅仅页面)大概花了我两个小时,不过仅仅是静态的、不可点击的。图有形似而无功能。自定义绘制Jetpack Compose 自定义绘制的文章其实并不少了,基本代码上和View体系基本类似,就是方法上有所差异详细的内容可以见其他作者的文章,如路很长OoO的JetPack-Compose - 自定义绘制 - 掘金 (juejin.cn)RugerMc的使用 Jetpack Compose 完成自定义绘制 - 掘金 (原创 2022-05-30 18:56:17 · 762 阅读 · 0 评论 -
深入Jetpack Compose——布局原理与自定义布局(四)ParentData
上一篇文章,我们接触了固有特性测量。这一篇,我们将探索ParentDataParentData曾经的例子让我们回忆一下第一篇文章中提到的例子,为了实现如下效果我们当时使用了这样一串修饰符:Box(modifier = Modifier .fillMaxSize() .wrapContentSize(align = Alignment.Center) .size(50.dp) .background(C原创 2022-03-10 11:29:56 · 297 阅读 · 0 评论 -
深入Jetpack Compose——布局原理与自定义布局(三)
在上一篇文章(深入Jetpack Compose——布局原理与自定义布局(二)中,我们探索了Modifier的本质和原理。这一次我们看看Compose体系中的一个重要特性:固有特性测量。固有特性测量或许不少人已经知道,Compose为了提高测绘性能,强行规定了每个微件只能被测量一次。也就是说,我们不能写出类似下面这样的代码:val placeables = measurables.map { it.measure(constrains) }// 尝试测量第二次,直接报错val placeables原创 2022-02-28 10:19:46 · 346 阅读 · 0 评论 -
深入Jetpack Compose——布局原理与自定义布局(二)
在上一篇文章深入Jetpack Compose——布局原理与自定义布局(一) 中,我们大致了解了Layout过程并简单实现了两个自定义布局。本次让我们将目光转向Modifier和固有特性测量本文部分参考自Android官方视频:Deep dive into Jetpack Compose layoutsModifier本质关于Modifier的本质,RugerMc大佬在图解 Modifier 实现原理 ,竟然如此简单这篇文章中已经解释地非常清楚了,我就不画蛇添足了。不过为了后续行文方便,我还是在此简原创 2022-02-15 14:03:17 · 1256 阅读 · 0 评论 -
深入Jetpack Compose——布局原理与自定义布局(一)
Jetpack Compose 正式版发布也已半年了,对我来说,应用到项目中也很久了(参见本人开源项目:译站)。 目前很多文章还集中于初探上,因此萌生了写作本文的想法,算是为Compose中文资料提供绵薄之力。本文的内容来自Android官方视频:Deep dive into Jetpack Compose layouts总览Jetpack Compose 中,单个可组合项被显示出来,总体上经历三个过程Composition(组合) -> Layout(布局) -> Drawing(绘制原创 2022-02-15 14:01:39 · 1444 阅读 · 0 评论 -
Jetpack Compose 中优雅完成数据持久化
Compose出来也好久了,各种remember和LocalXXX.current也是用得越来越熟。如果能在保持上述写法一致性的情况下完成数据的持久化工作,不是显得挺优雅的吗?基于此,我写出了开源库:ComposeDataSaver: 在Jetpack Compose中优雅完成数据持久化简单一瞥:// booleanExample 初始化值为false// 之后会自动读取本地数据var booleanExample by rememberDataSaverState(KEY_BOOLEAN_EXA原创 2022-01-25 21:01:59 · 2774 阅读 · 0 评论 -
Jetpack Compose异步加载图片的实现
本文使用两种方式,实现Compose中图片的异步加载前言Android开发中异步加载图片是非常常见的需求。本文将带你实现这一需求。本文将分为如下两个方面:自己写函数用开源库本文目录前言实现借助Glide库自己写引入依赖编写函数使用例子借助开源框架简单的例子一些限制参考实现借助Glide库自己写Glide开源库基本上成为了Android中加载图片的首选,其简单易用的API和强大的缓存能力让这一过程变得十分方便。自然在Jetpack Compose中也可以使用。引入依赖在模块中的原创 2021-07-14 19:22:21 · 2014 阅读 · 2 评论