我有2.6(ios)中的一个新的phonegap功能的问题,最后他们包括一个缩小webview来处理固定元素的选项.不幸的是,结合HideKeyboardFormAccessoryBar设置为true 的选项,会出现一个奇怪的白条而不是AccessoryView(请看截图).当我设置KeyboardShrinksView为false 时,这不会发生
有没有人遇到过与新版本类似的问题?这是一个错误还是一个功能?;)
欢呼horst.
小智 5
这是一个错误.这是因为在显示键盘后WebView没有正确调整大小.默认情况下,PhoneGap通过键盘高度减去视图框来调整WebView的高度.但是,它没有考虑表格附件栏隐藏在该计算中的事实.
这是一个临时的解决方案,而PhoneGap修复了这个错误:
在CDVViewController.m(下类/斧),转到行140应该是(无效)keyboardWilLShowOrHide函数中.在showEvent if语句中,它根据键盘的高度计算WebView的新大小.
将if语句的内容更改为:
if (showEvent) {
newFrame.size.height -= keyboardFrame.size.height;
if ([@"true" isEqualToString: self.settings[@"HideKeyboardFormAccessoryBar"]]) {
newFrame.size.height += 45;
}
}
Run Code Online (Sandbox Code Playgroud)
我添加了一个额外的if语句,它还检查了HideKeyboardFormAccessoryBar配置.如果设置了它,它会将WebView的大小增加45个像素(表单附件栏的高度).