【问题标题】:Scroll view problem with ios12, xcode10, cordova 7.1, cordova-ios 4.5.4 on keyboard closingios12、xcode10、cordova 7.1、cordova-ios 4.5.4 在键盘关闭时的滚动视图问题
【发布时间】:2019-02-21 12:11:16
【问题描述】:

我使用 Framework7 v2.3.1 为 iOS 构建了一个 cordova 应用程序,使用:

  • cordova@7.1
  • cordova-ios@4.5.4
  • cordova-plugin-wkwebview-engine@1.1.4
  • cordova-plugin-wkwebview-file-xhr@2.1.1

它工作得很好,但几天前我用 Xcode 10 编译了适用于 iOS 的 Cordova 应用程序。在 iOS 12 设备上,如果应用程序是用 Xcode 10 编译的,当我选择一个输入字段时,键盘会出现并且视图会滚动向上,但是当键盘关闭时,视图不会向下滚动,键盘的空白区域仍然存在。如果我使用 Xcode 9.4 编译应用程序并将其安装在使用 iOS 12 的设备上,或者如果应用程序使用 Xcode 10 编译并安装在使用 iOS 11.x 的设备上,问题就不存在了 我上传了一个截图来更好地解释这个问题 有人有解决方案吗? 谢谢

【问题讨论】:

  • 我也有这个问题!如果有人可以帮忙,请!

标签: cordova xcode10 ios12


【解决方案1】:

我用一个棘手的方法修复它,你应该尝试:

- (void)keybordDidHide {
    if (!CGPointEqualToPoint(self.lastContentOffset, self.webView.scrollView.contentOffset)) {
        [self.webView.scrollView setContentOffset:self.lastContentOffset];
        [self.webView.scrollView setContentInset:UIEdgeInsetsMake(0, 0, 0, 0)];
    }
}

- (void)keybordWillShow {
    self.lastContentOffset = self.webView.scrollView.contentOffset;
}

【讨论】:

  • 你把这个sn-p粘贴到哪个文件中?另外你如何声明lastContentOffset?谢谢!
【解决方案2】:

使用这个插件https://www.npmjs.com/package/cordova-plugin-keyboard#keyboarddidhide

或“cordova 插件添加cordova-plugin-keyboard”

然后在 deviceReady 上添加这个:

Keyboard.automaticScrollToTopOnHiding = true;

这在 ios12 中适用于我

【讨论】:

    猜你喜欢
    • 2014-05-11
    • 1970-01-01
    • 2014-09-12
    • 1970-01-01
    • 2015-09-14
    • 2019-04-23
    • 2013-10-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多