相关问题
如何控制软键盘弹出对页面的遮挡?
1393浏览 • 1回复 待解决
鸿蒙手机如何隐藏软键盘和弹出软键盘?
13370浏览 • 1回复 待解决
如何判断软键盘是否弹出
652浏览 • 1回复 待解决
关于软键盘弹出遮挡问题
372浏览 • 1回复 待解决
鸿蒙软键盘弹出后,页面底部的按钮
2812浏览 • 0回复 待解决
软键盘弹出时,固定导航栏不滚动以及软键盘区域不遮盖组件(输入框)
441浏览 • 1回复 待解决
如何实现软键盘弹出后,整体布局不变
620浏览 • 1回复 待解决
鸿蒙app开发 页面弹出了软键盘,底部的按钮被键盘挡住,有解决方案?
8768浏览 • 1回复 待解决
点击输入框时会拉起软键盘,如何实现点击Button时软键盘关闭
732浏览 • 1回复 待解决
HarmonyOS自定义Text时,点击Text如何实现弹出软键盘的功能?
2827浏览 • 3回复 待解决
TextInput组件获取焦点之后怎么自动弹窗软键盘,还得点击一下才会弹出软键盘?
694浏览 • 1回复 待解决
滑动的页面软键盘挡住内容不能向上滑动
747浏览 • 1回复 待解决
API8 怎么隐藏软键盘?
1278浏览 • 1回复 待解决
如何实现弹窗和软键盘的避让
528浏览 • 1回复 待解决
如何主动拉起软键盘,你知道吗?
849浏览 • 1回复 待解决
H5页面输入框自动获焦弹起软键盘
477浏览 • 1回复 待解决
ets textInput 组件如何设置默认获焦切不弹软键盘?
1708浏览 • 1回复 待解决
如何控制TextInput软键盘的拉起与收起(获焦失焦)
188浏览 • 1回复 待解决
Grid组件如何实现高度自适应
1363浏览 • 1回复 待解决
Web组件如何实现高度自适应?
430浏览 • 1回复 待解决
页面上下拖动时怎么隐藏键盘
510浏览 • 1回复 待解决
点击弹出来的CustomDialog的Mask区域时,如何将焦点传递给Dialog下面的页面
688浏览 • 1回复 待解决
InnoDB为什么需要自适应的Hash索引?
1169浏览 • 1回复 待解决
如何实现右边不动,左边自适应的布局
348浏览 • 1回复 待解决
RelativeContainer不能根据子组件自适应宽高
396浏览 • 1回复 待解决
本文主要介绍当软键盘弹出时,输入框与页面的自适应。
典型的使用场景如下:
使用的核心API
安全区域
getLastWindow
avoidAreaChange
核心代码解释
场景一:输入框在底部时,保证顶部标题栏不被顶出去
实现思路:当我们点击输入框时,系统会弹出软键盘,这时候软键盘会占用一部分屏幕空间,当我们设置了安全区域expandSafeArea后,会导致页面整个被挤出去,但是一般的移动端逻辑,还需要保持tabHeader不能被顶出去,通过自定义的tab实现了述求。
场景二:输入框在顶部时,保证页面不被遮挡
实现思路:当我们点击输入框时,系统会弹出软键盘,这时候软键盘会占用一部分屏幕空间,导致显示区域和软键盘区域重叠。软键盘区域属于系统规避区域。除了软键盘区域之外,还有一些其他的系统规避区域,比如状态栏、刘海屏和手势区域等。如果想让应用能够适应这些系统规避区域的变化,我们需要监听这些区域的变化事件并且根据这些区域的尺寸,动态地调整应用的显示区域,重新绘制页面。
问题总结:
隐藏键盘功能暂未实现,目前系统接口不支持,接口支持后更新。
重绘方法获取页面高度不准确,具体原因暂未找到,后续定位后更新。
目前暂未实现沉浸式状态栏的场景,后续更新。
注明适配的版本信息
IDE:DevEco Studio 4.0.3.600
SDK:HarmoneyOS 4.0.10.11