Swift Facebook按钮对齐问题

Swift Facebook按钮对齐问题,swift,constraints,facebook-ios-sdk,Swift,Constraints,Facebook Ios Sdk,所以我要补充一点 所以我不确定为什么按钮在左上角,而所有其他项目都正常。它至少应该是350和cetnered。有两个原因 首先,您只需设置中心X和宽度。您需要指定垂直约束,即顶部约束或中心约束 第二个是默认情况下translateAutoResizengMaskintoConstraints为true,这意味着视图将其原点和大小设置为约束。这会弄乱你的布局 只需将其设置为false: FBlogBut.translatesAutoResizezingMaskintoConstraints=fal

所以我要补充一点

所以我不确定为什么按钮在左上角,而所有其他项目都正常。它至少应该是350和cetnered。

有两个原因

首先,您只需设置中心X和宽度。您需要指定垂直约束,即顶部约束或中心约束

第二个是默认情况下translateAutoResizengMaskintoConstraints为true,这意味着视图将其原点和大小设置为约束。这会弄乱你的布局

只需将其设置为false: FBlogBut.translatesAutoResizezingMaskintoConstraints=false

注:如果你想遵循命名惯例,变量名是大小写的,这意味着第一个字符是小写的。在这种情况下,不需要缩写,按钮名称可以是fbLoginButton,并且不会太长。FBLOG但不清楚是登录还是注销按钮

  var FBlogBut = FBSDKLoginButton()
    loginView.addSubview(FBlogBut)


    NSLayoutConstraint(item: FBlogBut, attribute: .width, relatedBy: .equal, toItem: nil, attribute: .notAnAttribute, multiplier: 1, constant: 350 ).isActive = true


    NSLayoutConstraint(item: FBlogBut, attribute: .centerX, relatedBy: .equal, toItem: loginView, attribute: .centerX, multiplier: 1, constant: 0 ).isActive = true

    loginView.layoutIfNeeded()