在Swift中将UIButton从屏幕右侧定位20px

Posted

技术标签:

【中文标题】在Swift中将UIButton从屏幕右侧定位20px【英文标题】:Position UIButton 20px from the right of screen in Swift 【发布时间】:2016-04-06 21:16:52 【问题描述】:

我希望这真的很容易,我敢肯定它是,但我根本无法使任何工作。

我已将viewForHeaderInSection 添加到我的tableView。我已经声明了UIView() 变量,还添加了UIButton

let myHeaderView = UIView()
let button = UIButton(type: UIButtonType.System) as UIButton

一切正常并显示,但我想要的是将按钮定位在距离视图/屏幕右侧 20 像素的位置。

在我的按钮代码中,我使用了:

button.frame = CGRectMake(0, myHeaderView.frame.height / 2, 90, 30)

使用0 将按钮定位到屏幕左侧。我希望它从屏幕右侧定位。

这似乎应该非常简单,我希望如此,但似乎没有人提到如何在网上进行操作,而且我尝试的任何方法都不起作用。

我需要的示例

【问题讨论】:

【参考方案1】:

您需要设置按钮的 x 位置,同时考虑屏幕的宽度,然后将按钮的宽度从该值中移除,然后移除 20px 填充:

帧值包括 x、y、宽度、高度。

所以你希望屏幕宽度减去 110(即按钮宽度加上填充):

button.frame = CGRectMake(UIScreen.mainScreen().bounds.width - 110, 0, 90, 30)

这会将您的 90 像素宽度按钮放置在距屏幕右边缘 20 像素的位置。 :)

另外,请确保将 x 值作为第一个参数,因为它是 x、y、宽度、高度。

【讨论】:

谢谢乔,但是从屏幕左侧开始定位,然后将按钮隐藏在屏幕外 110 像素。我希望按钮位于屏幕/UIView 的右侧... x 值总是从左边开始,我说这很好,你可以通过获取屏幕/宽度并减去按钮宽度来计算 x 位置以将其定位在右边缘,如你所愿吧?

以上是关于在Swift中将UIButton从屏幕右侧定位20px的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Swift 中将 UIButton 居中?

使用自动布局 Swift 定位 uibutton

如何在 md-toolbar 中将元素定位到右侧?

旋转后不采用 Swift 约束

在 Swift 中将多个 UIButton 添加到多个 UIView

Swift:在 UIbutton 中将 fontawesome 图标与字符串混合