HarmonyOS 弹窗布局被软键盘压缩
占满屏幕高度的dialog软键盘弹出时布局被压缩。
操作步骤:
1、已在EntryAbility windowStage.loadContent后设置windowStage.getMainWindowSync().getUIContext().setKeyboardAvoidMode(KeyboardAvoidMode.OFFSET),已确认@Component组件生效,布局不会被软键盘压缩。
2、SelectCategorySidebarDialog中的控件设置expandSafeArea([SafeAreaType.KEYBOARD],[SafeAreaEdge.BOTTOM])。
3、SelectCategorySidebarDialog.open。
4、点击SelectCategorySidebarDialog中的TextInput打开软键盘,SelectCategorySidebarDialog布局被压缩。
源码:
// dialog的定义
@CustomDialog
export struct SelectCategorySidebarDialog {
controller?: CustomDialogController
build() {
Column() {
Blank()
TextInput()
.expandSafeArea([SafeAreaType.KEYBOARD], [SafeAreaEdge.BOTTOM])
}
.expandSafeArea([SafeAreaType.KEYBOARD], [SafeAreaEdge.BOTTOM])
.backgroundColor(Color.White)
.width("72.8%")
.height("100%")
}
}
// dialog初始化方式
selectCategoryDialogController: CustomDialogController | null = new CustomDialogController({
builder: SelectCategorySidebarDialog(),
autoCancel: true,
customStyle: true,
alignment: DialogAlignment.TopStart,
})
期待结果:软键盘直接遮挡dialog的布局。
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS CustomDialog弹窗被软键盘顶起后,存在空隙
1237浏览 • 1回复 待解决
HarmonyOS 弹窗不避让软键盘
790浏览 • 1回复 待解决
HarmonyOS 如何实现弹窗不规避软键盘
286浏览 • 1回复 待解决
HarmonyOS 如何监听软键盘弹出以及获取软键盘高度
167浏览 • 1回复 待解决
鸿蒙手机如何隐藏软键盘和弹出软键盘?
15680浏览 • 1回复 待解决
如何实现弹窗和软键盘的避让
1736浏览 • 1回复 待解决
HarmonyOS 弹窗跟软键盘间的间如何去除
527浏览 • 1回复 待解决
如何实现软键盘弹出后,整体布局不变
2524浏览 • 1回复 待解决
HarmonyOS中怎么实现布局不被软键盘遮挡,软键盘弹出时,布局会自动向上滚动,使得当前焦点EditText可见。
40浏览 • 1回复 待解决
HarmonyOS 软键盘操作API
31浏览 • 1回复 待解决
HarmonyOS,弹窗跟软键盘间的间如何去除 ?
197浏览 • 0回复 待解决
HarmonyOS 如何监听软键盘的弹起与收起及获取软键盘高度
235浏览 • 1回复 待解决
HarmonyOS dialog和软键盘
208浏览 • 1回复 待解决
HarmonyOS 软键盘问题
20浏览 • 1回复 待解决
HarmonyOS TextInput软键盘监听
189浏览 • 1回复 待解决
HarmonyOS 软键盘弹出方式
238浏览 • 1回复 待解决
HarmonyOS 如何监听软键盘收起
197浏览 • 1回复 待解决
HarmonyOS 如何监听软键盘弹出
197浏览 • 1回复 待解决
如何主动收起软键盘?
508浏览 • 1回复 待解决
TextInput组件获取焦点之后怎么自动弹窗软键盘,还得点击一下才会弹出软键盘?
2152浏览 • 1回复 待解决
HarmonyOS 如何让@CustomDialog自定义弹窗不被软键盘顶起
175浏览 • 1回复 待解决
HarmonyOS 显示软键盘方法无效
96浏览 • 1回复 待解决
HarmonyOS如何代码收起软键盘
677浏览 • 1回复 待解决
HarmonyOS 软键盘弹出隐藏监听
237浏览 • 1回复 待解决
HarmonyOS 软键盘如何主动关闭?
200浏览 • 1回复 待解决
自定义弹窗默认避让输入法,不允许配置不避让。自定义弹窗仅适用于简单提示场景,当弹窗高度过大时建议用页面级的组件代替,或者使用半模态实现相关功能。
参考示例: