You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows10下Kotlin Compose Desktop TextField唤起触摸键盘问题

解决Compose Desktop在Windows10平板模式下TextField不弹出软键盘的问题

针对你在Pipo触摸屏电脑上遇到的问题,结合已开启系统自动显示触摸键盘的设置,给出以下排查和解决建议:

  • 升级Compose Desktop依赖版本
    旧版本的Compose Desktop存在触摸事件处理不完善的bug,建议将依赖升级到最新稳定版(如1.5.x及以上),确保框架对Windows触摸交互的支持更完善。修改build.gradle.kts中的compose版本:

    plugins {
        kotlin("jvm") version "1.9.20"
        id("org.jetbrains.compose") version "1.5.11"
    }
    
  • 手动触发触摸键盘并请求焦点
    Compose Desktop默认不会自动调用Windows触摸键盘,可在TextField获得焦点时手动启动系统触摸键盘程序TabTip.exe,同时配合焦点请求器确保输入框获取焦点:

    val focusRequester = remember { FocusRequester() }
    var stationName by remember { mutableStateOf(TextFieldValue("")) } 
    
    TextField(
        label = { Text("Enter Computer Station name") },
        value = stationName,
        singleLine = true,
        onValueChange = { stationName = it },
        modifier = Modifier.focusRequester(focusRequester),
        onFocusChanged = { state ->
            if (state.isFocused) {
                // 仅在Windows平台执行
                if (System.getProperty("os.name").lowercase().contains("windows")) {
                    runCatching {
                        Runtime.getRuntime().exec("cmd /c start TabTip.exe")
                    }.onFailure { it.printStackTrace() }
                }
            }
        }
    )
    
  • 标记应用为触摸优化应用
    Windows可能未将Compose Desktop应用识别为触摸优先应用,可在打包配置中添加触摸兼容属性,让系统更优先触发触摸键盘:

    compose.desktop {
        application {
            mainClass = "MainKt"
            nativeDistributions {
                windows {
                    manifest {
                        attributes["CompatibleWithTouch"] = "true"
                        attributes["DPIAware"] = "true"
                    }
                }
            }
        }
    }
    
  • 排查系统层面问题

    1. 测试系统自带应用(如记事本、Edge浏览器)的触摸键盘是否正常弹出,若其他应用也无法弹出,需更新Pipo设备的触摸驱动或重置Windows输入设置;
    2. 确认平板模式完全激活:检查任务栏是否自动隐藏,系统是否正确切换到触摸优先模式,必要时重启设备。

内容的提问来源于stack exchange,提问作者Jesser

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 15:07:11