2016-06-24 8 views
0

ViewController内のページング - scrollView内にビューを追加しようとしていますが、オートレイアウトの問題がたくさんあります(このコードはすべてプログラマティックでストーリーボードではありません) 。スクロールビューエラーでプログラムによる自動レイアウト

制約の最初のセットは正常に動作しますが、第二セット(svfirstView)は、次のエラーが発生:libc++abi.dylib: terminating with uncaught exception of type NSExceptionこの問題に関するすべてのヘルプをいただければ幸いです

、以下のコード:

override func viewDidLoad() { 
    super.viewDidLoad() 

    view.backgroundColor = .whiteColor() 

    sv.backgroundColor = .redColor() 
    view.addSubview(sv) 

    sv.translatesAutoresizingMaskIntoConstraints = false 
    view.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("H:|[sv]|", options: .DirectionLeadingToTrailing, metrics: nil, views: ["sv": sv])) 
    view.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("V:|[sv]|", options: .DirectionLeadingToTrailing, metrics: nil, views: ["sv": sv])) 
    sv.pagingEnabled = true 

    let firstView = UIView() 
    firstView.backgroundColor = .greenColor() 
    sv.addSubview(firstView) 
    firstView.translatesAutoresizingMaskIntoConstraints = false 
    sv.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("H:|[f]|", options: .DirectionLeadingToTrailing, metrics: nil, views: ["fv": firstView])) 
    sv.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("V:|[fv]|", options: .DirectionLeadingToTrailing, metrics: nil, views: ["fv": firstView])) 
} 
+1

あなたのビジュアルフォーマットの1つには「[fv]」ではなく「[f]」があります。 – dan

+0

うわー、それでした!本当にありがとう。驚くべきことに、デバッグが私にそれを教えてくれない... – Kenneth

答えて

1

@danが指摘しているように、ビジュアル形式の文字列にはタイプミスがあります。誰かが同様の問題に遭遇した場合に備えて、この投稿を残しておきます。テイクオフ:

(自動レイアウトあり)は、ビジュアル文字列のタイプミスによるものです。

関連する問題