滚动到 Focused Field Cordova
Posted
技术标签:
【中文标题】滚动到 Focused Field Cordova【英文标题】:Scroll to Focused Field Cordova 【发布时间】:2016-04-21 16:53:46 【问题描述】:我的问题
我目前正在使用 Cordova 为 ios 编写应用程序。我有一个页面,上面有这样的表格:
当用户点击某个字段时,键盘会在 iOS 上按预期显示。但是,为了防止我的应用移出屏幕,我启用了以下设置:
// Prevent the keyboard from pushing up the webview
cordova.plugins.Keyboard.disableScroll(true);
不幸的是,这可以防止一些引起我问题的事情:
-
当某个字段获得焦点时,屏幕不会滚动到该字段,因此有时该字段会出现在键盘后面。
即使我确实有解决上述问题的方法,但对于位于屏幕底部的元素,我将无法向下滚动足够远以将它们带到键盘上方的视图中。
我的问题
解决方案 1
在 Cordova 中,有什么方法可以自动滚动到焦点字段而不将整个应用移出屏幕?
如果可能的话,我该如何处理接近底部且无法向上滚动到视图中的字段?
显然,第一点可以使用 javascript/jQuery 和一些巧妙的逻辑与 keyboard_height
、position()
和 scrollTop()
来实现。但是,这会产生关于键盘后面输入字段的第二点的问题......
解决方案 2
如果我应用以下代码,它将解决上面突出显示的问题,但会产生另一个问题(如下所述):
// Enable the auto scroll when the keyboard is shown
cordova.plugins.Keyboard.disableScroll(false);
是否可以将我的标题(“编辑配置文件”位)修复到屏幕顶部以确保该部分始终可见?
【问题讨论】:
找到相关解决方案了吗? 【参考方案1】:使用https://www.npmjs.com/package/cordova-plugin-keyboard#keyboardshrinkview
及其Keyboard.shrinkView
方法。
【讨论】:
以上是关于滚动到 Focused Field Cordova的主要内容,如果未能解决你的问题,请参考以下文章
是否可以将 TimePicker 的“Focused”视图嵌入到另一个视图中?
Phonegap(Cordova)仅使用 data-position="fixed" 页眉/页脚滚动 ios 滚动问题