2017-11-25 11 views
0

iOS 앱을 개발하기 시작한 시점은 Xcode입니다.Xcode Storyboard - 다중 레이블로 된 다중 스택 뷰

Storyboard에는 가로/세로 Stack Views 안에 넣어야하는 Labels의 8 세트가 있습니다. 그 중 하나가 복수 행 Label이고, 행이 2으로 설정되고 텍스트에 이 삽입 된 개행 문자가 있습니다. + 을 입력하십시오.

+---------------Stack View+1-(100%)-------------------+ 
| +--Stack View 2-(50%)-+ | +---Stack View 3-(50%)--+ | 
| |Label 1    | | | +--Stack+View 4-----+ | | 
| +---------------------+ | | |Label 3|Label 4 | | | 
| |Label 2    | | | +-------+-----------+ | | 
| |Multiline   | | +-----------------------+ | 
| +---------------------+ | | +--Stack+View 5-----+ | | 
|       | | |Label 5|Label 6 | | | 
|       | | +-------+-----------+ | | 
|       | +-----------------------+ | 
|       | | +--Stack+View 6-----+ | | 
|       | | |Label 7|Label 8 | | | 
|       | | +-------+-----------+ | | 
|       | +-----------------------+ | 
+-------------------------+---------------------------+ 

Stack View 1 화면으로 넓게해야한다 : 나는 무엇을 달성하고자하는 Eight Labels with one being multiline

는 (시각적보다 개념적 그림보다) 같은 것입니다. Stack Views23은 화면 너비의 절반을 채우기 위해 확장되어야합니다. 따라서 둘 다 확장되어야합니다. Labels4, 6, 835는, 7는 텍스트에 맞게 충분히 넓어야해야하는 반면, Stack View3의 남은 폭을 채우기 위해 확장해야한다.

나는 가장 바깥 쪽 수평 Stack View에 구속을 사용하여 가장자리를 포옹합니다.

에 한 줄을 추가하고 심지어 Stack ViewsStack View에 추가하면 예상대로 작동합니다. 다른 Stack View이 수직 Stack View 추가 Single line and multiline Labels added to a Stack View

width 매우 넓은의 새로운 새로운 Stack View을 만든다 : Some single line Labels added to Stack Views

그러나 단 한 줄의 Labelzerowidth의가되는 Stack ViewStack View 리드에 여러 Label 추가 : Stack Views added to another Stack View

여러 줄없이 동일한 작업을 수행하면 Label이 예상대로 작동합니다. 여러 줄로 내 의도 된 레이아웃을 얻으려면 Label?

나는 Stack Views에 제약 조건을 설정했지만 아무 것도 시도하지 않았습니다.

편집 : 여기 해결책을 찾았습니다 : Multiline label in UIStackView. 내 문제는 여러 개의 Labels (이전 검색)이 아니라 복수 행 Label입니다. Stack View에 추가하기 전에 을 View 안에 삽입하면 문제가 해결됩니다.

+0

스토리 보드를 공유 할 수 있습니까? –

답변

1

가장 바깥 쪽의 스택 뷰에는 맨 위, 맨 위 및 맨 뒤의 3 가지 제약 조건이 필요합니다. contentSize에서 높이 제약 조건을 유추합니다.

substackviews에 수평 내용의 압축 및 수평 내용 압축 값을 설정해야합니다. 가장 바깥 쪽의 stackView가 너무 작은 공간이나 너무 많은 공간이있는 경우 압축/확장 할 스택을 알 수 있습니다 (다른 배포 방법을 선택하지 않는 한). 채우기, 같은 크기 조정).

여러 라벨이있는 스택 뷰에 대해 동일한 작업을 수행해야합니다. 또한 라벨 동작을 적절히 설정해야합니다 (예 : 단어 줄 바꿈, 맞춤에 맞게 축소, numberOfLines 등).

+0

운이없는 제약 설정 시도 ... 내 경우에 따라 시퀀스가 ​​어떻게됩니까? – Kanchu

+0

올바른 제약 조건입니다. 모든 하위보기에 대해 가로 콘텐츠 포옹 및 콘텐츠 압축을 설정 했습니까? 라벨 너비에 대한 귀하의 의도가 무엇인지 모르기 때문에 여기에 사용할 값을 말할 수 없습니다. stackviews를 사용할 때 1) 고정 된 비율의보기 또는 간격이 있어야하거나 2) 공간이 더 많거나 적을 때 요소가 축소되고 확장되는 방식에 대한 아이디어가 있으므로 컨텐츠 속성을 적절하게 설정할 수 있습니다. –

+0

'StackView '에 추가하기 전에'Label'을'View' 안에 삽입하면 문제가 해결됩니다. – Kanchu