- 博客(757)
- 资源 (39)
- 收藏
- 关注
原创 【CoderSay】Code For Better 谷歌开发者之声 - 相遇2022GoogleSummit
【CoderSay】Code For Better 谷歌开发者之声 - 相遇2022GoogleSummit
2022-09-20 11:36:14 1286
原创 【Android,Kotlin,TFLite】移动设备集成深度学习轻模型TFlite(物体检测篇)
移动设备集成深度学习轻模型TFlite(物体检测篇)
2022-06-30 13:53:06 1187
原创 【Android,Kotlin,TFLite】移动设备集成深度学习轻模型TFlite(图像分类篇)
tensorflowlite的集成分类图片对返回数据的处理示例, 可以pull代码参考demoList{Recognition}关于这里的框架代码, 可以参考我另一个开源框架库: SwiftKit ,不过因为还未完成, 没有完整的wiki, 过段时间推出综上所述: 集成是不是很简单, 那赶快试试吧......
2022-06-29 17:35:19 1159
原创 【Android Compose】Compose LaunchedEffect,DisposableEffect,SideEffect
Compose里面附带效应是指对应用的其余部分可见的任何更改。
2024-10-27 01:25:15 302
原创 【Android】Room 如何判断操作结果
在这些操作完成后,我们希望能够得知操作是否成功,以便进行后续的逻辑处理。在上述代码中,我们通过调用insert、update和delete方法来进行数据库操作,并根据返回的结果来判断操作是否成功。通过这种方式,我们可以方便地获取数据库操作的结果,并根据需要进行相应的处理。根据Room的规范,这些方法会返回受影响的行数,我们可以根据这些返回值来判断操作是否成功。为了判断数据库操作是否成功,我们可以在Room的DAO层中使用返回类型为int的方法,并在方法中返回受影响的行数。
2024-10-25 17:37:19 136
原创 【Android】Compose ConstraintLayout 如何设置子组件内部均分
通过 ConstraintLayout 和 createHorizontalChain,你可以轻松实现子元素宽度均分的布局,类似于 LinearLayout 中的 weight 功能。这个方法非常灵活,适合实现复杂的布局需求,同时可以精确控制每个元素在链中的分布方式。
2024-10-24 12:02:54 401
原创 【Android】ClassCastException: Class cannot be cast to Parameter
检查你的混淆,是不是把数据类添加进去了。
2024-10-24 09:54:56 172
原创 【Android Compose】Compose Coil 如何实现网络图片缓存
其实 coil 是通过 imageLoader 对 url 进行图片加载的,并且在幕后也进行了缓存工作。在 MainActivity 中可以直接调用 ImageLoader ,这是 Coil 默认的图片加载器。下面我们将自定义自己的图片加载器以满足我们开发中的各种需求。创建 MyApplication 继承 Application 并实现 ImageLoaderFactory 的接口,在 newImageLoader 方法中重写我们自己的图片加载器覆盖掉默认的。
2024-10-23 10:00:56 188
原创 【Android】IllegalArgumentException: parameter must be a descendant of this view Error
根据上面的代码片段, 用于防止获得焦点,以便 or 可以请求焦点。当我尝试使用 Intent 或 finish() 返回此视图时,会发生此错误;当我使用 Back Button 时,偶尔也会出现问题。他定义在查找 a 以获得焦点时 与其后代之间的关系。必须是以下常量值之一。
2024-10-16 22:30:06 213
翻译 【Android Compose】Jetpack Compose 中的重组
Recomposition 是 #JetpackCompose 中的一个关键概念。这是在状态更改时自动更新 UI 的过程。这允许您创建动态和响应式 UI,而无需在每次状态更改时手动更新 UI。重组由对 state 对象的更改触发。状态对象是可以观察和更改的对象。当状态对象发生更改时,Compose 将自动重组界面。重组是一个强大的工具,可以帮助您创建动态且响应迅速的 UI。但是,了解重组的工作原理以便有效地使用它非常重要。尽管存在这些挑战,但重组是一个强大的工具,可以帮助您创建动态且响应式的 UI。
2024-10-16 21:57:05 17
原创 【Kotlin】Kotlin中如何外部重写internal open方法
最近遇到一个需要外部重写AbstractComposeView的internalOnMeasure的需求,那么我i们以此为例,看看如何破了kotlin的internal之道。
2024-10-10 14:28:34 353
原创 【Android】Room 添加新表的迁移策略
有一个疑问新增room Entity时是否要升级数据库版本并写迁移策略, 答案是肯定的, 当room新增通过更新数据库版本以及创建相应的迁移策略来添加新表。以开源库CacheKRM为例, 展现如何升级的过程。
2024-10-10 12:03:47 159
原创 【Android Compose】Compose中如何delay一个事件
我们可以通过这几种方式Hander.postDelayed() CoroutineScope LaunchedEffect。在调用的 Composable 中,相应地对回调做出反应:onHide。
2024-10-10 11:47:13 189
原创 【Android】Room cannot verify the data integrity
同样,如果以前的数据库模式不在线上,则既不需要增加数据库版本,也不需要回退到破坏性迁移。如果不增加数据库(推荐):应该从Android设置中清除应用程序的应用程序数据。如果确实增加了数据库版本:将需要编写数据库迁移代码来解释数据库模式的任何更改。如果的应用程序是在线的,可能需要增加数据库版本并提供适当的迁移。因为清除应用程序数据总是有效的,所以我每次都采用这种方法。当第一次遇到此消息时,很可能正在使用未发布的数据库版本。如果是这种情况,很可能不应该增加数据库版本。简单地清除应用数据将移动你通过异常。
2024-10-06 14:38:56 190
原创 【Android Compose】Compose Row和Column 如何设置内部组件之间的距离
如果需要根据特定规则在元素之间分配空间, 请使用 horizontalArrangement。如果需要为每个元素添加内边距,请使用 Modifier.padding。如果需要在特定元素之间添加固定大小的间距, 请使用 Spacer。
2024-09-15 18:12:45 339
原创 【Android Compose】Compose DropdownMenu width 设置和父Box宽度一样
在 Compose 中,设置 DropdownMenu 的宽度与父 Box 的宽度相同需要一些技巧,因为 DropdownMenu 的宽度默认是由其内容决定的。这两种方法都可以实现 DropdownMenu 与父 Box 宽度相同的效果。选择哪种方法取决于具体需求和代码风格。
2024-09-15 18:07:55 270
原创 【Androd Compose】如何设置DropdownMenu的宽度和Text一致
请注意,在使用 DropdownMenu 时,需要确保它在 Box 中的 Text 下方正确显示。可以使用 Modifier.clickable 来触发 DropdownMenu 的展开,并根据需要调整 Box 中元素的位置。可以使用 Modifier.onGloballyPositioned 获取 Text 的宽度,并将其设置为 DropdownMenu 的宽度。可以使用 SubcomposeLayout 测量 Text 的宽度,并将其用作 DropdownMenu 的宽度约束。
2024-09-15 18:02:30 319
原创 【Android Compose】Compose 设置宽高比
如果此参数设置为 true,则可组合项将首先尝试匹配高度约束,然后根据宽高比调整宽度。如果设置为 false(默认值),则可组合项将首先尝试匹配宽度约束, 然后根据宽高比调整高度。例如,aspectRatio(1f) 表示宽度和高度相等,aspectRatio(16f / 9f) 表示宽高比为 16:9。请注意,aspectRatio 修饰符会根据可组合项的父级布局和自身的约束来确定最终的尺寸。在 Compose 中,可以使用 Modifier.aspectRatio 来设置可组合项的宽高比。
2024-09-15 15:10:06 281
原创 【Android Compose】Compose 如何设置组件的宽高
如果需要填充父级布局的可用空间,请使用 Modifier.fillMaxWidth 和 Modifier.fillMaxHeight。如果需要设置固定的宽高,请使用 Modifier.size 或 Modifier.width 和 Modifier.height。如果需要可组合项根据其内容自动调整大小, 请使用 Modifier.wrapContentSize。如果需要强制可组合项具有指定的尺寸,请使用 Modifier.requiredSize。
2024-09-15 15:06:26 258
原创 【Android Compose】Compose 如何为Button设置内边距
在 Compose 中,您可以使用 Button 的 contentPadding 参数来设置其内边距。contentPadding 参数接受一个 PaddingValues 对象,可以使用它来指定按钮内容的内边距。如果您只想设置按钮内容的内边距,请使用 contentPadding 参数。如果您需要设置整个按钮的内边距,请使用 Modifier.padding。
2024-09-15 15:00:49 236
原创 【Android Compose】Compose Text设置字间距
请注意,TextUnit 是一个实验性 API,因此您需要使用 @OptIn(ExperimentalUnitApi::class) 注解来启用它。或者需要更精细地控制字间距,可以使用 AnnotatedString 并为不同的字符或字符串段设置不同的 letterSpacing 值。letterSpacing 属性接受一个 TextUnit 值,用于指定字间距的大小。在 Compose 中,您可以使用 TextStyle 的 letterSpacing 属性来设置 Text 可组合项的字间距。
2024-09-15 14:56:31 249
原创 【Android Compose】如何像TextView一样设置文本居中对齐
我们一般在textView中设置layout_gravity=“center”,那么Compose中呢?使用wrapContentHeight。
2024-09-13 22:58:49 237
原创 【Android Compose】Compose 如何给Button设置颜色
【代码】【Android Compose】Compose 如何给Button设置颜色。
2024-09-13 22:56:01 141
原创 【Android Compose】Compose 中ConstraintLayout 如何像在Xml中一样设置weight
以往我们在ConstraintLayout中定义如下。那么如何在Compose中这么用呢。
2024-09-13 22:51:18 134
原创 【Android】composeView detached from window再attached的时候, clickable无法响应
这几天用Compose写布局的时候发现, 一旦app退出后台再返回的时候, Compose组件无法响应事件了, 翻了一下源码, 原来是上下文被dispose了, 那么就自己定义一个。
2024-09-13 22:45:15 204
原创 【Android】No virtual method setContent(Lkotlin/jvm/functions/Function0;)V in class Landroidx/compose/
【代码】【Android】No virtual method setContent(Lkotlin/jvm/functions/Function0;
2024-09-13 22:31:06 144
原创 【CoderSay】智启万象 谷歌开发者之声 - 相遇2024GoogleConnect
透过 Home API,开发者只需一次整合,即可轻松连接超过 6 亿台设备,并能运用 Google 的 hub 和 Matter 架构,以及 Google 的自动化引擎,这些功能都能在 Android 和 iOS 平台上使用。开发者现在能通过 WebView 和 Custom Tab 实现应用内 Web,打造高质量的跨平台内容,优化用户访问和消费内容的体验,并简化多设备上内容的构建与分发。应用能够通过系统级的动画支持,更自然地响应用户的返回手势,展示出更加自然和无缝的交互效果。
2024-08-14 23:05:27 911
原创 【Android】自定义View如何实现ellipsize.End的效果
text:原始的文本内容 paint:canvas用到的画笔 avail:画布能提供的宽度 where:枚举类型,就是 省略号显示的位置。
2024-08-04 16:18:29 207
原创 【Android】paint.isFilterBitmap作用
是 Android 中 Paint 类的一个方法,用于设置或获取是否对位图应用双线性过滤。双线性过滤是一种纹理过滤技术,可以使缩放的位图在屏幕上显示得更平滑,减少锯齿效果。通过设置 isFilterBitmap,你可以控制位图在缩放时的显示效果,从而根据需要平衡性能和视觉质量。获取双线性过滤的状态。
2024-08-04 11:53:36 216
原创 【Android】CameraX如何调用Camera2的api实现手动焦距
例如我们实现一个slider去调整焦距。包括关闭自动对焦和对焦距的调整。
2024-08-04 11:45:11 314
原创 【Android】 如何使用Retrofit2拦截器获取Request中@body的参数值
【代码】【Android】 如何使用Retrofit2拦截器获取Request中@body的参数值。
2024-08-03 23:49:18 278
测试2.14.txt
2020-03-07
web2.1.html
2020-03-06
编译作业2.6.jpg
2020-03-04
编译作业2.5.jpg
2020-03-04
编译作业2.3.jpg
2020-03-04
编译作业2.1.jpg
2020-03-04
编译作业1.4.txt
2020-03-01
编译作业1.1.txt
2020-03-01
测试作业1.2.txt
2020-02-29
测试作业1.1.txt
2020-02-29
7.2_排序计算次数.cpp
2019-10-29
7.1_内部排序算法排序.CPP
2019-10-29
6.2_二叉排序树.cpp
2019-10-29
6.1_顺序查找.CPP
2019-10-29
5.2_MGRAPH1.CPP
2019-10-29
5.1_MGRAPH.CPP
2019-10-29
4.4_算子树数.CPP
2019-10-28
4.3_调换子树.CPP
2019-10-28
4.1_递归遍历.CPP
2019-10-28
3.2_舞伴配对问题.cpp
2019-10-28
3.1_栈与回文.CPP
2019-10-28
2.2_约瑟夫环链表.cpp
2019-10-28
2.1_链表基本练习题.CPP
2019-10-28
1.2_约瑟夫环.CPP
2019-10-28
1.1_顺序表.CPP
2019-10-28
Git 如何在已存在目录中初始化仓库
2023-06-09
TA创建的收藏夹 TA关注的收藏夹
TA关注的人