mcpField
K
kotlin-compose

kotlin-compose

github.com/pluginagentmarketplace开发766 次安装43 周前更新
代码仓库

关于 kotlin-compose

面向 Kotlin 开发者的技能,帮助使用 Jetpack Compose 构建声明式 UI。内容涵盖状态、副作用、Modifier、Material 3 主题,以及重组和状态保留问题的处理。

主要功能

  1. 01Compose 状态管理
  2. 02副作用处理
  3. 03Modifier 用法
  4. 04Material 3 主题
  5. 05重组与状态问题排查

适用场景

  1. 01实现有状态的 Compose 界面
  2. 02处理与输入变化相关的副作用
  3. 03使用 Material 3 设置界面样式
  4. 04排查重组或旋转后状态丢失

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/pluginagentmarketplace/custom-plugin-kotlin --skill kotlin-compose

安装后在 Claude Code 中输入/kotlin-compose确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

assets/
config.yaml
schema.json
references/
GUIDE.md
PATTERNS.md
scripts/
validate.py

详细介绍

Kotlin Compose 技能

使用 Jetpack Compose 声明式模式构建现代 UI。

涵盖主题

状态管理
@Composable
fun Counter() {
    var count by remember { mutableIntStateOf(0) }
    Button(onClick = { count++ }) { Text("Count: $count") }
}

// Derived state
val isValid by remember { derivedStateOf { email.isNotBlank() && password.length >= 8 } }
副作用
@Composable
fun UserScreen(userId: String) {
    LaunchedEffect(userId) {
        viewModel.loadUser(userId)
    }

    DisposableEffect(Unit) {
        val listener = viewModel.addListener()
        onDispose { listener.remove() }
    }
}
修饰符
Box(
    modifier = Modifier
        .fillMaxSize()
        .padding(16.dp)
        .background(MaterialTheme.colorScheme.surface)
        .clickable { onClick() }
)
Material 3 主题
@Composable
fun AppTheme(content: @Composable () -> Unit) {
    val colorScheme = if (isSystemInDarkTheme()) darkColorScheme() else lightColorScheme()
    MaterialTheme(colorScheme = colorScheme, typography = Typography, content = content)
}

故障排除

问题解决方案
无限重组使用 remember 或 derivedStateOf
旋转屏幕后状态丢失使用 rememberSaveable 或 ViewModel

用法

Skill("kotlin-compose")

评论

支持 Markdown