Jetpack Compose TextField切换时键盘类型闪烁

现象

        最近在使用Jetpack中的compose替代以前的View,在操作TextField控件时发现一个现象:当把键盘的默认类型改了,比如改成KetboardType.Number,然后使用focusRequester属性切换不同TextField的焦点时,软键盘会先跳转成普通键盘然后再变成数字键盘(键盘类型闪烁)。

分析

        以为是设置键盘类型的位置靠后(compose中属性的设置顺序会影响实际效果),导致键盘类型没来及切换,修改之后无效果;

        后发现手动切换不同的TextField进行输入时,也会出现闪烁的现象,说明和我使用代码改变焦点跳转没有关系;

        后又发现这个问题网络上其实已存在,这是地址(需要梯子)。这是compose ui库中的一个bug,这是地址,现已修复。吐槽一下这个bug去年就发现了,今年才解决,所以学习新东西都是有风险的。

解决方法

        compose ui库的版本太低,升级至 1.2.0-alpha03 或以上,注意kotlin的版本也要随着compose的版本而变化,这是compose和kotlin版本兼容地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值