2016-06-24 3 views
2

프로젝트의 Github repository.NSLayoutConstraint를 사용하여 제약 조건을 변경하십시오.

그래서 예를 들어,이 변경 :

let orangeViewCenterXConstraint = NSLayoutConstraint(
    item: orangeView, 
    attribute: .centerX, 
    relatedBy: .equal, 
    toItem: view, 
    attribute: .centerX, 
    multiplier: 1.0, 
    constant: 0.0 
) 

을이를 위해 : 내가 함께 노력

let purpleViewBottomSpaceConstraint = NSLayoutConstraint(
    item: purpleView, 
    attribute: .bottom, 
    relatedBy: .equal, 
    toItem: orangeView, 
    attribute: .top, 
    multiplier: 1.0, 
    constant: -8.0 
) 

:

orangeView.centerXAnchor.constraint(equalTo: view.centerXAnchor) 

방법과 동일한 기능을 수행 할 수있는 적절한 방법입니다 :

purpleView.bottomAnchor.constraint(equalTo: <#T##NSLayoutAnchor<AnyObject>#>, constant: <#T##CGFloat#>) 

하지만 purpleViewpurpleVieworangeView 사이의 공백을 필요로하므로 기술적으로 equalTo: orangeView, constant: -8.0이지만이 것은 잘못된 것입니다.

나는 현재 무엇을하고 있는지 잘 모르겠다. 그래서 나는 배울 점이있다.

+0

문제 해결! 당신은 질문이있는 경우 github에 체크 아웃, xcode8에!) –

답변

1

당신은 topAnchor을 지정해야합니다, 예를 들면 :

NSLayoutConstraint.activate([ 
    purpleView.bottomAnchor.constraint(equalTo: orangeView.topAnchor, constant: -8) 
]) 
+0

감사는 다음과 같습니다 'purpleView.bottomAnchor.constraint (equalTo : orangeView.topAnchor, 상수 : -8)' –

+0

Xcode 8에서는 새로운 구문입니다. 그에 따라 답변이 업데이트되었습니다. – Rob

+0

나는 또 다른 질문을했습니다 : '하자 purpleViewTopSpaceConstraint = NSLayoutConstraint (항목 : purpleView, 속성 : .top, relatedBy : .equal, toItem : self.topLayoutGuide, 속성 : .bottom, 배율 : 1.0, 일정 : 8.0)' –

관련 문제