2017-12-30 30 views
0

autolayout에서 텍스트 뷰의 너비를 고치려고 무서운 시간을 보내고 있습니다. 텍스트 뷰가 화면의 지배적 인 요소이기 때문에 그것을 고치는 나의 무능력은 전체 스크린을 파괴하고있다.IOS/Autolayout : 대형 텍스트 뷰의 너비를 고정하는 방법은 무엇입니까?

설정은 요소가 들어있는 내용보기를 포함하는 스크롤보기를 포함하는보기입니다. Apple의 지시에 따라 뷰의 너비, 스크롤 뷰 및 내용보기를 375로 설정하고 내용보기를 scrollview에 고정하고 네면의보기 모두를 0으로 고정합니다.

텍스트보기를 원합니다. 중심에 있고 꽤 넓다. 따라서 40 점의 콘텐츠 뷰, 40 점의 콘텐츠 뷰, 295 점의 폭로 상수로 처음 설정했습니다. 7 Plus에서는 오른쪽과 SE의 텍스트 뷰가 너무 넓습니다. 오른쪽 여백을 초과하여 확장되었습니다. 자연스러운 일은 폭 제한을 제거하는 것으로 보였으므로 선행 및 후행 제한이 있었지만 전체보기로 인해 도시가 113 도로 줄어 들었습니다.이 문제가 발생할 수있는 구체적인 이유는 없습니다. 그랬어. 그런 다음 295로 리셋을 시도했지만 작거나 같았습니다. 나는 또한 295로 설정하려고했지만 우선 순위를 낮추었다. 우선 순위를 500에서 1000으로, 뷰가 113

enter image description here enter image description here

가장 분통이 터지는 아래로 다시 줄어들 것처럼 우선 순위 (750), 그것은 행동했다. 첨부 된 제약의 스크린 샷을 참조하십시오. 제안에 대해 미리 감사드립니다.

편집 :

그것은 UITextViews이 자동 레이아웃에 대한 응답으로 자신의 크기를 조정하지 않을 수 있습니다 this post에서 나타납니다

. 따라서 자동 레이아웃 인보이스 보드에서 제약 조건을 연결하고 코드를 수정하여이 작업을 수행 할 수있는 방법은 없습니다. 나는 애플이 스토리 보드에서 텍스트보기로 자동 레이아웃을 지원하지 않는다고 믿을 수 없다. 그래도 여전히 더 좋은 방법이 있기를 바란다.

답변

1

제어 최보기로 콘텐츠 뷰에서 드래그 앤 그들이 평등 폭 내가 올바르게 고정 폭으로보기 /있는 ScrollView /있는 contentView의 폭을 설정하는 당신을 이해한다면

+0

그건 의미가 있습니다. 그러나 noteView의 centerx constraint와 width 제약 조건을 지웠고 전체 장면은 뷰의 크기의 약 절반 크기로 바로 축소되었습니다. contentVIew는 375에서 143.5로 줄었고 notesview는 295에서 63.5로 줄어 들었습니다. 이것은 실제로 wierd 정렬을 만든다. 앞과 뒤가 각각 40 인 경우 notesview는 contentview보다 80 작아야합니다. 하지만 나는 왜 notesview에 대한 너비를 제거하면 contentview와 notesview가 모두 231.5 줄었는지 이해할 수 없습니다. – user6631314

+0

필자는 선행 및 후행 제약 조건을 삭제 한 다음 왼쪽과 오른쪽의 notesview를 40의 상수를 사용하여 contentview에 "다시 고정"하려고 시도했습니다. 그러나 도움이되지 않습니다. 콘텐츠 뷰의 폭은 즉시 143.5로 조정되었습니다. – user6631314

+0

나는 문제가 notesview와 관련이 있다고 생각하지만 contentview에 고정되어 있지만 contentview는 할당 된 너비가없는 notesview에서 너비를 취하고있다. 그것은 notesview에 대한 63.5의 기괴한 폭으로 끝나고 있습니다. 다른 요소들과 다른 수평 오프셋의 인공위성 일 수 있습니다. 다른 요소는 contentview에서 파생 된 노트 뷰 너비를 기준으로합니다. – user6631314

0

, 즉 375 PT 만들기 . 이것은 분명히 당신에게 작은 스크린 (아이폰 5와 같은)과 큰 스크린 (플러스와 같은)에서 문제를 줄 것이다.

콘텐츠보기가 가장 바깥 쪽보기와 동일한 폭으로 설정되어야합니다.

스토리 보드로 작업하고 있고 바깥 쪽보기가보기 컨트롤러의 기본보기 인 경우 너비가 이미 설정되어 있으므로 잘 가고 있습니다. 대신에 xib가 있으면보기의 너비를 하위보기로 추가 할 위치로 설정해야합니다. 분명히 너비는 화면 너비를 기준으로 설정해야합니다.

+0

scrollview 및 contentview의 너비를 가장 바깥 쪽보기 컨트롤러에 고정합니다. 아무데도 수동으로 설정하지 않습니다. 가장 바깥 쪽 VC의 경우에는 너비가 필요하므로 제약 조건이 아닌 크기 관리자에서 375로 설정해야합니다. 나는 스토리 보드가 기본적으로 이들을 600으로 설정한다고 생각합니다. 어떤 폭을 가지지 않는 방법은 모르겠습니다. – user6631314