2
制約を使用してFacebookのログインボタン(スクリーンショットの中央上部)を[Register or Login Button]の下に表示しようとしていますが、使用する制約とその使用方法を確認してください。私はSwift 3の新機能ですが、まだプログラム的に制約を払っていないので、どんな援助も歓迎されるでしょう!最初はCGRectのxとyの位置を使ってボタンを配置しましたが、別のデバイスでボタンが同じ場所にないことに気付きました。今は制約を使用しようとしています。プログラムでもプログラムで作成されたボタンでプログラムで制約を使用
それは次のようになります。
これが私のviewDidLoadでの私のボタンに関するコードです:
let verticalSpace = NSLayoutConstraint(
item: self, attribute: .bottom, relatedBy: .equal, toItem: fbLoginButton,
attribute: .bottom, multiplier: 0.75, constant: 0)
が、つながったことを:
let fbLoginButton = FBSDKLoginButton()
view.addSubview(fbLoginButton)
fbLoginButton.frame = CGRect(x: 0, y: 0, width: view.frame.width -
100, height: 40)
self.view.addSubview(fbLoginButton)
fbLoginButton.center.x = view.frame.width/2
私がやってみました私はこのエラーを取得する:
私はボタンを追加したConstraint items must each be an instance of UIView, or UILayoutGuide.
を使用して追加された「ショーアラート」の下に、プログラムで「送信」 'item'は' self.view'でなく 'self'でなければなりません。エラーメッセージは' UIView'でなければならないと言っています。 'UIViewController'は' UIView'ではありません。また、 'fbLoginButton'で' translatesAutoresizingMaskIntoConstraints'を 'false'に設定してください – Paulw11