UnityTech / UIWidgets

UIWidget is a Unity Package which helps developers to create, debug and deploy efficient, cross-platform Apps.
Other
1.97k stars 256 forks source link

无法获取键盘高度 #49

Closed luoxuguang closed 5 years ago

luoxuguang commented 5 years ago

输入框获取焦点不能被键盘遮挡,但是没有方法获取手机软键盘高度

zhuxingwei commented 5 years ago

iOS版已修复。修复方式为:添加了键盘出现以后的回调,自动Resize。不过这个功能如果想自动实现的话目前需要使用Material框架的Scaffold把你的UI包起来,这个组件在layout时会自动处理相关事宜。

具体的,如果不想使用Material框架,那么暂时就需要手动来实现了。具体原理是:UIWidgets框架中,在Window.padding和Window.viewInsets里面会存储当前合理的屏幕padding和viewInsets值,在键盘出现/消失 等事件后原生会将最新的值发给UIWidgets以完成更新,并触发一次整体的rebuild。因此只要在build时考虑这两个值对UI做布局就可以了。具体方式可以参考Scaffold里面的layout逻辑。直接搜索 viewInsets即可。

zhuxingwei commented 5 years ago

@luoxuguang 麻烦试试?

luoxuguang commented 5 years ago

@luoxuguang 麻烦试试?

好的,我试下