[英]iOS Facebook LoginButton constraints conflict
我想调整Facebook的LoginButton
大小,但出现此错误
[LayoutConstraints]无法同时满足约束。 以下列表中至少有一个约束是您不想要的约束。
尝试这个:
(1)查看每个约束,并尝试找出不期望的约束;
(2)查找添加了一个或多个不必要约束的代码并进行修复。
(注意:如果看到的是您不了解的NSAutoresizingMaskLayoutConstraints,请参阅有关UIView属性translationsAutoresizingMaskIntoConstraints的文档)
(“” NSAutoresizingMaskLayoutConstraint:0x1c4283ed0 h =-&v =-&FBSDKLoginButton:0x104432fd0'Login'.height == 40(活动)”,
“” NSLayoutConstraint:0x1c42828f0 FBSDKLoginButton:0x104432fd0'Login'.height == 28(active)>“)
将尝试通过打破约束来恢复
NSLayoutConstraint:0x1c42828f0 FBSDKLoginButton:0x104432fd0'Login'.height == 28(active)>
我已经搜索了很多,并且不知道height == 28
约束是如何存在的。
创建LoginButton
:
private var didLayoutSubviews = false {
didSet {
//I've use storyboard first, but couldn't make it work with resizing
self.facebookSignUpButton.removeFromSuperview()
self.facebookSignUpButton = LoginButton(readPermissions: [.email, .publicProfile])
//I've tried to set `isActive = false`
self.facebookSignUpButton.constraints.forEach({self.facebookSignUpButton.removeConstraint($0)})
self.facebookSignUpButton.translatesAutoresizingMaskIntoConstraints = false
self.view.addSubview(self.facebookSignUpButton)
self.facebookSignUpButton.heightAnchor.constraint(equalToConstant: self.googleSignUpButton.frame.height - 8).isActive = true
self.facebookSignUpButton.widthAnchor.constraint(equalToConstant: self.googleSignUpButton.frame.width - 8).isActive = true
self.facebookSignUpButton.centerXAnchor.constraint(equalTo: self.view.centerXAnchor).isActive = true
self.facebookSignUpButton.topAnchor.constraint(equalTo: self.separatorLabel.bottomAnchor, constant: 20).isActive = true
self.facebookSignUpButton.bottomAnchor.constraint(equalTo: self.googleSignUpButton.topAnchor, constant: -10).isActive = true
self.facebookSignUpButton.delegate = self.presenter
self.view.layoutIfNeeded()
}
}
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
if !self.didLayoutSubviews {
self.didLayoutSubviews = true
}
}
发给开发者的通知在4.19的Facebook指南中 。 这已经在此处讨论过了 。
就个人而言,我只能使用Swift 4中的自定义登录按钮来实现此目的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.