使 UIButton 在屏幕上保持静止

Posted

技术标签:

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

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

感谢您的帮助!

【问题讨论】:

【参考方案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]; 这正是我所需要的!非常感谢!

以上是关于使 UIButton 在屏幕上保持静止的主要内容,如果未能解决你的问题,请参考以下文章

使 UIButton 在旋转期间保持附加到页脚

在 UITableViewCell 中,如何更改单击的按钮粗体的样式,而其他单元格保持静止?

下拉悬停不会保持静止

在 iPhone 的屏幕大小上更改 UIButton 的大小

使 UIButton 保持在表格视图 rss 提要单元格的顶部 [重复]

向下滚动时如何使 UIButton 在表格视图中保持选中状态