Bottom Navigation
创建 Screen HomeScreen 的可组合函数 @Composable fun HomeScreen() { Column( modifier = Modifier.fillMaxSize(), horizontalAlignment = Alignment.CenterHorizontally ) { Button( onClick...
NavHostController
基本介绍 NavHostController 是 Jetpack Compose Navigation 中负责管理导航状态的核心控制器。 记录当前在哪个页面(destination) 处理导航动作(navigate / popBackStack) 管理返回栈(Back...
observeAsState
observeAsState 是 Jetpack Compose 中用于 将 LiveData 转换为 Compose 可观察状态(State) 的扩展函数。 作用让 LiveData 的变化自动触发Compose UI 重组。 基本用法 // 无默认值 val user b...
Day 7 – 猜单词游戏
猜单词游戏的基本业务流程如下所示 生成单词,检测答案 生成随机单词,并检测用户输入的单词是否在选定的单词中 import random word_list = ['aardvark', 'baboon', 'camel'] chosen_word = ran...
Day 15 – 咖啡机
MENU = { 'espresso': { 'ingredients': { 'water': 50, 'coffee': 18, }, 'cost': 1.5, }, 'latte': { 'ingredients': { 'water': 200, 'milk': 150, 'coffee': 24, }, 'cost': 2.5, }, 'cappu...
Day 17 – 自定义类(Class)
自定义类 类定义的语法,如下 # 类的定义, ClassName必须首字母大写 class ClassName: # 类的对象 class_name_1 = ClassName() 常见的几种命名方式- PascalCase - camelCase - snake_case 构造...
如何动态更改查询的排序顺序或谓词
要实现动态排序,您需要将@Query属性移至 SwiftUI 层次结构中的视图中 - 您需要将其放入子视图中,在其中可以使用依赖项注入提供排序值。 这意味着创建一个新的 SwiftUI,它使用@Query来显示您...
What’s the difference between await and async let? await 和 async let 有什么区别?
Swift lets us perform async operations using both await and async let, but although they both run some async code they don’t quite run the same: await wai...








