摘要: 问题实例: NavHost(modifier = modifier,navController = navController) { Log.d("UserScreen", "NavHost 被调用") composable(ReplyRoute.MAIN) { Log.d("UserScreen" 阅读全文
posted @ 2024-06-25 11:08 ClearMoon 阅读(277) 评论(0) 推荐(0)
摘要: 问题: 点击 tab 的时候,期望viewPager2直接切换到其他页面,不需要滑动动画,类似微信切换 tab 的效果 思路: 切换页面是否滑动的关键在于 ViewPagerOnTabSelectedListener->onTabSelected内的 viewPager.setCurrentItem 阅读全文
posted @ 2022-06-21 11:47 ClearMoon 阅读(2554) 评论(0) 推荐(0)
摘要: 问题: 前两天在代码中定义文本大小,使用了 text.setTextSize(aimSize) 此处的 aimSize 使用了 sp2px ()方法进行转换,结果编译出来的文字尺寸太大了。 方法: 在 XML 中对textSize 赋值为 15sp 如果想要在代码中实现一样的大小,不需要使用 sp2 阅读全文
posted @ 2022-06-21 11:00 ClearMoon 阅读(369) 评论(0) 推荐(0)
摘要: 给自定义 view 添加xml属性 步骤: 在 values 文件夹下的 attr.xml 文件中添加属性,name 为属性名,format 为属性类型,也可以在中添加枚举 <resources> <declare-styleable name="RecycleDetailView"> <attr 阅读全文
posted @ 2022-06-21 10:42 ClearMoon 阅读(112) 评论(0) 推荐(0)
摘要: 打开开发者模式,找到webView实现,选中Google WebView即可 阅读全文
posted @ 2021-12-28 10:18 ClearMoon 阅读(335) 评论(0) 推荐(0)
摘要: 查看startActivity() 可以知道最终调用了startActivityForResult() 查看startActivityForResult() 可以知道调用了execStartActivity() 其中的mMainThread.getApplicationThread() mMainT 阅读全文
posted @ 2021-06-08 16:56 ClearMoon 阅读(99) 评论(0) 推荐(0)
摘要: by lazy 只能被用在被val修饰的变量上, 而lateinit只能被用var修饰的变量上, 因为被lateinit修饰的字段无法被编译为一个final字段、 因此无法保证它的不可变性。 被lateinit修饰的变量有一个幕后字段用来存储它的值, 而by lazy 创建了一个包含by lazy 阅读全文
posted @ 2021-01-04 10:34 ClearMoon 阅读(646) 评论(0) 推荐(0)
摘要: #介绍 ##先来说一遍官话 是一种一步一步创建一个复杂对象的创建型模式,它允许用户在不知道内部构件细节的情况下,更加精细地控制及对象的构造流程。 它可以将构建复杂对象的流程与它的部件分离,使构建过程与部件都可以自由扩展,降低两者间的耦合性。 ##再来结合实际例子 装一台电脑主机需要主板,CPU,内存 阅读全文
posted @ 2020-12-28 17:34 ClearMoon 阅读(324) 评论(0) 推荐(0)
摘要: 适配刘海屏就是调整控件的位置使其位于安全区域 各种机型适配:一个个型号适配,麻烦,不靠谱 Android P自带的API:还有很多旧版本钉子户呢,不靠谱 那么,有没有一种方法,可以不用判断是否是刘海屏呢? 思路: 创建一个工具类用于获得与储存StatusBar高度 在Activity创建的时候得到系 阅读全文
posted @ 2020-12-16 13:27 ClearMoon 阅读(92) 评论(0) 推荐(0)
摘要: 如标题所示,昨天在使用selector的时候遇到了点问题 设计给出的轮播效果图是这样的 我这边用的selector,实现的效果是这样的 下面是代码 <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item 阅读全文
posted @ 2020-07-17 22:07 ClearMoon 阅读(551) 评论(0) 推荐(0)