From 4ca838fdd75bc81d9a5c166d5a5bedd04bdf332f Mon Sep 17 00:00:00 2001 From: SOR <3272194354@qq.com> Date: Sat, 12 Sep 2026 21:31:00 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=94=99=E8=AF=AF=EF=BC=8C?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=B8=80=E4=B8=AA=E7=94=A8=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Learning/进入KMP.md | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/Learning/进入KMP.md b/Learning/进入KMP.md index b6e84e5..0c08a75 100644 --- a/Learning/进入KMP.md +++ b/Learning/进入KMP.md @@ -79,7 +79,7 @@ val myCard = @Composable { a: Int -> ```kotlin @Composable -def Counter() { +fun Counter() { // 每次重组时,randomId 不会被重新生成,始终保留第一次的值 val randomId = remember { UUID.randomUUID().toString() } // 如果是可变变量,常使用委托,这里,它是一个枚举类 @@ -87,7 +87,7 @@ def Counter() { } @Composable -def UserProfile(userId: String) { +fun UserProfile(userId: String) { // 只有当 userId 发生变化时,remember 才会重新计算并更新 userCache val userCache = remember(userId) { fetchUserCacheFromDb(userId) @@ -127,7 +127,7 @@ fun CounterDisplay( ```kotlin @Composable -def Counter() { +fun Counter() { // 使用 remember + mutableStateOf 保持状态并在值变化时触发重组 var count by remember { mutableStateOf(0) } @@ -135,6 +135,26 @@ def Counter() { Text("点击次数: $count") } } + +@Composable +fun App() { + var seedColor: Color + + // 假设这里有什么东西会使 seedColor 发生变化 + + // seedColor 变化时,colorScheme 会被重新定义, + // 因为 rememberDynamicColorScheme 是 Composable 函数 + val colorScheme = rememberDynamicColorScheme( + seedColor = seedColor, + isDark = isSystemInDarkTheme() + ) + + // colorScheme 变化时,MaterialTheme 会重组, + // 因为 MaterialTheme 是 Composable 函数 + MaterialTheme( + colorScheme = colorScheme, + ) {} +} ``` ## 接下来可以看