Преглед на файлове

Updated keyboardDisplacementFix on RNCWKWebView

Catch some edge cases where the scrollView contentSize might be smaller than the frame size
Updated if code style (added spaces)
Alexander Stammbach преди 6 години
родител
ревизия
831f8f4442
променени са 1 файла, в които са добавени 5 реда и са изтрити 2 реда
  1. 5
    2
      ios/RNCWKWebView.m

+ 5
- 2
ios/RNCWKWebView.m Целия файл

@@ -177,10 +177,13 @@ static NSString *const MessageHanderName = @"ReactNative";
177 177
     // Additional viewport checks to prevent unintentional scrolls
178 178
     UIScrollView *scrollView = self.webView.scrollView;
179 179
     double maxContentOffset = scrollView.contentSize.height - scrollView.frame.size.height;
180
-    if(scrollView.contentOffset.y > maxContentOffset) {
180
+    if (maxContentOffset < 0) {
181
+        maxContentOffset = 0;
182
+    }
183
+    if (scrollView.contentOffset.y > maxContentOffset) {
181 184
       // https://stackoverflow.com/a/9637807/824966
182 185
       [UIView animateWithDuration:.25 animations:^{
183
-          self.webView.scrollView.contentOffset = CGPointMake(0, maxContentOffset);
186
+          scrollView.contentOffset = CGPointMake(0, maxContentOffset);
184 187
       }];
185 188
     }
186 189
 }