【问题标题】:STOP UIWebView bounces vertically in deviceSTOP UIWebView 在设备中垂直反弹
【发布时间】:2010-08-19 10:51:44
【问题描述】:

我正在使用此代码来阻止 uiwebview 垂直反弹,并且它在模拟器 4.0 中工作正常。但是当我在第一代 ipod 中安装我的应用程序时,它不会工作。

for (id subview in webView.subviews)
  if ([[subview class] isSubclassOfClass: [UIScrollView class]])
    ((UIScrollView *)subview).bounces = NO;

谁能帮帮我?除此之外还有什么原因吗?

提前致谢......

【问题讨论】:

    标签: iphone


    【解决方案1】:

    我在运行 3.1.3(使用 iOS 4.1 SDK 构建)的 iPhone 上遇到了同样的问题。

    关于这个问题的问题有很多讨论(但我还没有找到适合我的解决方案):
    Stop UIWebView from "bouncing" vertically?

    作为一种解决方法,我尝试设置背景颜色,以便反弹与正在显示的 HTML 的白色背景相匹配。不幸的是,你得到的灰色渐变看起来仍然很糟糕。其他人在这里问过如何解决这个问题(但还没有答案):
    Remove gradient background from UIWebView?

    【讨论】:

    • 您可以在 HTML 加载后通过针对 Javascript 移动事件执行 preventDefault() 来禁用反弹。
    【解决方案2】:

    我有同样的问题,如前所述,有很多答案。不幸的是,他们都没有为我工作。然而,我有办法解决它。

    在 CDViewController.m 文件中,您应该在实例化视图时添加以下内容。那应该行得通。如果没有,请在此处查看其他答案Stop UIWebView from "bouncing" vertically?

    if (!self.webView) {
            [self createGapView];
            webView.delegate = self;
            webView.scalesPageToFit = YES;
            [[webView scrollView] setBounces:NO];
        }
    

    【讨论】:

      【解决方案3】:

      您必须在 webViewDidFinishLoad 函数中定义反弹设置。

      我通过这种方式在我的 webview 委托视图控制器中修复了它:

      -(void) webViewDidFinishLoad:(UIWebView *)webView
      {
           [[_webView.subviews objectAtIndex:0] setBounces:NO];
      }
      

      希望对你有帮助:)

      【讨论】:

        猜你喜欢
        • 2010-10-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-07-24
        • 1970-01-01
        • 1970-01-01
        • 2019-08-11
        相关资源
        最近更新 更多