【问题标题】:Keeping UIButton Stationary on Screen使 UIButton 在屏幕上保持静止
【发布时间】:2011-07-08 15:42:08
【问题描述】:

我在 UIWebView 顶部有一个 UIButton。 UIButton 应该看起来像是网页原生的。但是,当我放大 UIWebView 时,按钮随之而来,显然看起来格格不入。有没有办法保持按钮相对于 UIWebView 的位置而不是它在屏幕上的位置?

感谢您的帮助!

【问题讨论】:

    标签: objective-c ios uiwebview uibutton zooming


    【解决方案1】:

    不确定我是否理解您的问题,但这里是:

    您可能有这样的视图层次结构:

    • 查看
      • UIWeb 视图
        • 用户界面按钮

    也就是说,您的按钮已作为子视图添加到 UIWebView。由于 UIWebView 也是 UIScrollView ,因此您会得到观察到的行为。要修复它,请将按钮设为兄弟,而不是子按钮:

    • 查看
      • UIWeb 视图
      • 用户界面按钮

    如果在 UIWebView 之后添加,它仍然会绘制在 UIWebView 的前面。

    【讨论】:

    • 我将[webView addSubview:refreshButton] 更改为[self.view addSubview:refreshButton]。没运气。我想要的是能够放大并让按钮消失并相对于 UIWebView 保持在同一位置。如果我需要让问题更清楚,请告诉我,很抱歉造成混淆。
    • “消失并留在同一个地方”恐怕对我没有多大意义。另外,我不明白您所说的 “相对于 UIWebView”是什么意思
    • 对不起。基本上,UIWebView 占据了整个屏幕。我想在右上角的 web 视图顶部有一个按钮。但是,当我放大左下角时,比方说,我希望该按钮此时超出 webview 的范围,以及右上角的其余部分和任何其他无法看到的区域,因为的变焦。现在,当我放大时,按钮停留在屏幕的右上角。这样是否更有意义?
    • 也许,现在听起来有点像您想要的与我假设的相反。我也错了 UIWebView 是一个滚动视图,它只有一个作为子视图。所以试试:[[[webView subviews] objectAtIndex:0] addSubview:refreshButton];
    • 这正是我所需要的!非常感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多