Interface Builder의 "너비가 높이와 같음"제약 조건


92

Interface Builder에서 '너비가 높이와 같음'을 의미하는 '정사각형'제약 조건을 만드는 방법을 찾을 수 없습니다. 이러한 제약 조건을 프로그래밍 방식으로 추가하는 것이 가능하다고 생각합니다. IB에서 할 수있는 일이 있습니까? 어쩌면 나는 그것을 보지 못합니까? 사소한 것 같지만 찾을 수 없습니다.


저는 Peter Ammon이 WWDC'12에서 "가능한 한 Interface Builder에 의존"에 대해 이야기했던 것을 기억합니다. 얼마나 역설적인가.
DemoniacDeath 2013 년

4
네, 레이아웃 제약의 구현에서 여전히 몇 가지 빠진 것이 있다고 생각합니다. 그들은 우리에게 대부분의 매개 변수에 대한 액세스 권한을 부여한 것으로 보이지만 많은 일에 유용 할 승수는 아닙니다.
rdelmar 2013 년

하지만 점점 좋아지고 있습니다! Auto Layout이 도입 된 지 3 년이 채되지 않았고 제 입장에서는 요즘 지원이 정말 좋습니다.
Lukas Kubanek 2014

답변:


187

Xcode 5.1b5 업데이트

너비가 높이와 같음

뷰에서 Ctrl + 클릭하고 끌어서 포인터가 뷰 위에있는 동안 놓습니다. "Aspect Ratio"를 선택합니다. 첫 번째 및 두 번째 항목이보기 인 제약 조건을 생성합니다.


Xcode 5.1 이전

너비 / 높이 편집기에 다른 속성과 관련되거나 비율을 설정할 필드가 없기 때문에 불가능합니다.

폭 제약

따라서 Interface Builder에서 다음 코드를 표현할 수 없습니다.

CGFloat ratio = 1.0;
NSLayoutConstraint *constraint = [NSLayoutConstraint
    constraintWithItem:myView
    attribute:NSLayoutAttributeWidth
    relatedBy:NSLayoutRelationEqual
    toItem:myView
    attribute:NSLayoutAttributeHeight
    multiplier:ratio
    constant:0];
constraint.priority = 1000;
[myView.superview addConstraint:constraint];

1
최신 업데이트에 감사드립니다. Xcode 5.1 베타 5에서는 실제로 IB에서 종횡비 제약 조건을 설정할 수 있지만 프로젝트를 컴파일하려고하면 다음 오류가 발생합니다. 5.1 이전 Xcode 버전의 종횡비 제약 . 따라서 최종 5.1 버전을 기다려야 할 수도 있습니다. 너도 마찬가지야, @Jano?
Lukas Kubanek 2014

예, XIB의 변경 사항은 이전 버전과 호환되지 않습니다. 5.1로 편집하면 더 낮은 버전으로 돌아갈 수 없습니다.
Jano 2014

그래서 xib를 컴파일 할 수 있습니까? 나를 위해 Xcode 5.1 베타 5에서도 작동하지 않습니다.
Lukas Kubanek 2014

1
@ onmyway133은 두 뷰 사이에 제약 조건을 만들고 승수를 1 : 2로 설정합니다.
Jano 2014

3
엑스 코드 7에서 Ctrl 키를 + 뷰에서 드래그 앤 자체의 상단에 출시, 선택 화면 비율을 클릭
inorganik

1

이미지에서와 같이 UI 요소에 새로운 제약 조건, 가로 세로 비율을 1 : 1로 추가하십시오.

가로 세로 비율을 1 : 1로 설정


0

시작하려면 버튼에서 자체로 대각선으로 드래그를 제어합니다. 너비 및 높이 제한을 추가 할 수있는 상황 별 메뉴가 나타납니다. 각각을 Shift + 클릭합니다. 제약 조건을 추가했음을 나타내는 확인 표시가 나타납니다. (둘 다 추가하기 전에 실수로 대화 상자를 닫은 경우에는 괜찮습니다. 드래그 단계를 반복하고 다른 단계를 설정하면됩니다) :

여기에 이미지 설명 입력

처음 추가 할 때 이러한 제약 조건은 버튼의 현재 너비와 높이를 사용하므로보다 적절한 값을 제공하기 위해 각 제약 조건을 조정해야합니다. 이미지가 정사각형이지만 한 번에 하나씩 수행해야하므로 두 제약 조건에서 동일한 상수 값을 사용하여 비례 적으로 버튼 크기를 조정해야합니다. 제약 조건을 두 번 클릭하고 상수 필드에 더 작은 값을 입력합니다.

여기에 이미지 설명 입력

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.