好的,我在.swift情节提要中添加了一个按钮,然后我将以下代码添加到我的ViewController.swift中
@IBOutlet weak var HelloButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
HelloButton.frame.origin.x = view.frame.size.width / 2
}但是,当我在我的iPhone 5上测试它时,它会将它移到屏幕的右边,而不会使它居中。我不知道该怎么做才能使按钮居中。
是的,这是我的第一个helloWorld应用程序,也许在我的头上,但我了解网页编程,我理解使它自动中心,我需要有屏幕视图的宽度总和和按钮的宽度。然后,我需要对按钮说,将屏幕视图宽度除以2。
例如,在CSS中,我们这样做
#button{margin:0 auto;}但这不是HTML或CSS。是SWIFT3
发布于 2016-09-22 10:48:34
试试这个:
HelloButton.center.x = view.frame.width/2您的不正确,因为origin.x是按钮视图的第一点(左上角),而不是视图的中心,您可以将它的背景色更改为不同的颜色来查看它
另外,变量名应该是lowerCase,然后是代码约定
发布于 2016-09-22 14:36:37
您应该使用Main.storyboard:中的Autolayout来完成所需的任务,您的操作方式类似于在中的ViewController (控件+鼠标左键 ->拖动蓝线向上,然后释放控件和鼠标左击E 211,您将看到E 112弹出E 213/code>)。
在弹出窗口中选择以下选项:
集装箱水平中心在集装箱中垂直中心

但是,如果要以编程方式执行,请使用viewWillLayoutSubviews方法执行:
class ViewController: UIViewController {
@IBOutlet weak var button: UIButton!
override func viewWillLayoutSubviews() {
super. viewWillLayoutSubviews()
button.center = view.center
}
}发布于 2016-09-22 11:45:25
在您的项目中启用了Autolayout吗?如果启用了自动布局,那么在viewdidLoad中更改UI :可能不会给出适当的结果。使用-viewWillLayoutSubviews方法执行用户界面任务,它将使您的按钮居中
myButton.center = self.view.center 希望它能成功。
https://stackoverflow.com/questions/39636933
复制相似问题