SwiftUI watchOS中如何实现TextField与数字键盘同屏展示
结论
无法通过系统自带TextField实现该需求,需要自行实现对应UI与交互逻辑。
原因说明
- watchOS系统对原生
TextField的交互逻辑做了强制限制:点击后固定跳转至系统级独立输入选择页,没有提供关闭跳转、内嵌键盘的公开API,也不支持直接固定数字键盘、和输入框同屏展示。
自定义实现思路
- 自行开发展示输入内容的视图:无需使用系统
TextField,仅需实现带样式的文本展示容器,绑定自行维护的输入字符串变量即可。 - 下方布局自定义数字按键网格:每个按键对应数字、删除、确认等所需功能,点击按键时直接修改绑定的输入字符串,即可实现需求的交互效果。
- 若需要接近系统键盘的交互体验,可以搭配
Button的buttonStyle修饰符、触感反馈实现按键按下效果。
内容的提问来源于stack exchange,提问作者SVG
相关产品推荐
相关产品推荐

