2017-05-22 10 views
0

プログラムでスタックビューを作成しましたが、これもプログラムで作成したビューを追加しました。しかし、私は2番目のビューを追加しようとすると動作しません。 Stackviewは2番目のビューを追加しません

@IBOutlet weak var codingScrollView: UIView! 
let codeStackView = UIStackView() 
var codeViews = [CodeView]() 
let codeView1 = CodeView(name: "Lennart", date: "13/05/2002", code: "Just some code") 
let codeView2 = CodeView(name: "Nina", date: "01/07/1999", code: "Also some code") 

codingScrollView

私はUIScrollViewのに追加したcontentviewです: はここに私のコードです。 codeStackViewは前に説明したものです codeViews配列を使用してビューをスタックビューに追加しています。

はここでviewDidLoadメソッドです:

codeViews.append(codeView1) 
    codeViews.append(codeView2) 

    codingScrollView.addSubview(codeStackView) 
    codingScrollView.backgroundColor = UIColor(red: 226/255, green: 226/255, blue: 226/255, alpha: 1) 

    codeStackView.centerXAnchor.constraint(equalTo: codingScrollView.centerXAnchor) 
    codeStackView.centerYAnchor.constraint(equalTo: codingScrollView.centerYAnchor) 

    codeStackView.translatesAutoresizingMaskIntoConstraints = false 

    codeStackView.spacing = 10 

    codeStackView.axis = .horizontal 
    codeStackView.alignment = .center 

    for i in 0...codeViews.count - 1 { 
     codeStackView.addSubview(codeViews[i]) 
     codeStackView.addArrangedSubview(codeViews[i]) 
    } 

しかし、私はそれが2番目のビューが表示されませんアプリを実行する場合、それだけでそれらのいずれかを示しています。

は、私は本当にスタックビューにCODEVIEW {1,2}を加える

答えて

0

てみはまずcodingScrollViewcodeStackViewを追加するヘル​​プのあらゆる種類に感謝ありがとうございました。

また、制約を実行する前にcodeStackView.translatesAutoresizingMaskIntoConstraints = falseを設定してください。

codeViews.append(codeView1) 
codeViews.append(codeView2) 

for i in 0...codeViews.count - 1 { 
    codeStackView.addSubview(codeViews[i]) 
    codeStackView.addArrangedSubview(codeViews[i]) 
} 

codeStackView.translatesAutoresizingMaskIntoConstraints = false 

codeStackView.centerXAnchor.constraint(equalTo: codingScrollView.centerXAnchor) 
codeStackView.centerYAnchor.constraint(equalTo: codingScrollView.centerYAnchor) 

codeStackView.spacing = 10 

codeStackView.axis = .horizontal 
codeStackView.alignment = .center 

codingScrollView.addSubview(codeStackView) 
codingScrollView.backgroundColor = UIColor(red: 226/255, green: 226/255, blue: 226/255, alpha: 1) 
+0

まだ1つのビューしか表示されていませんが、ありがとうございます –

+0

しかし、奇妙なことはスタックビューがまったく中央にないことです –

関連する問題