2017-05-22 14 views
0

프로그래밍 방식으로 스택보기를 만들었고 프로그래밍 방식으로 만든보기를 추가했습니다. 그러나 두 번째보기를 추가하려고하면 작동하지 않습니다. Stackview가 두 번째보기를 추가하지 않습니다.

@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에 추가 한 내용 없음입니다 : 다음은 내 코드입니다. 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]) 
    } 

하지만 응용 프로그램을 실행하는 경우는 두 번째보기를 표시하지 않습니다, 그것은 단지 그들 중 하나를 보여줍니다.

는 스택보기로 코드 뷰 {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

여전히 하나의보기 만 표시되지만 감사합니다. –

+0

하지만 이상한 것은 스택보기가 전혀 중앙에 있지 않다는 것입니다. –