Xcode 인터페이스 작성기에 문제가 있습니다. 하나의보기 컨트롤러에 View Controller의 루트보기에 가장자리가있는 UICollectionView가있는 스토리 보드가 있습니다. 루트보기에는 UICollectionView의 선행 및 후행 공백에 대한 -16 및 -16의 Descendant 제약 조건이 있습니다.XCode8 : UICollectionView 가장자리 - 가장자리, 한 특성 변형 (크기 클래스)의 제약 조건 편집으로 다른 특성 변형이 깨졌습니다.
다른 크기 클래스 (또는 특성 변형이 호출 됨)로 전환하면 선행 및 후행 여백이 -20, -20이됩니다. 가장자리에서 가장자리로 조정하면 다른 특성 변형이 각면에 4 픽셀 씩 삽입됩니다. 따라서 하나의 변형에서 제약 조건을 편집하면 다른 변형이 뒤틀어 지므로 모든 내부 계산 논리가 셀에 대해 해제됩니다.
그래서 동시에 여러 특성 변형의 제약 조건을 동시에 만족시킬 수 없으며 내 UICollectionView를 주변에 패딩하지 않고 가장자리에서 가장자리로만 가질 수 있습니다.
모든 제약 조건을 다시 시도했습니다. 같은 문제.
스토리 보드 자체에서 특성 변형을 사용하지 않도록 설정했습니다. 같은 문제.
편집 : 또한 "중개보기"(또한 edge-to-edge)를 추가하고 그 안에 내 UICollectionView를 넣으려고했습니다. 차이는 없습니다.
부정적인 삽입량은 각 장치 요소마다 달라야한다는 것을 알게되었습니다. 일부에서는 -16-16, 일부에서는 -20, -20, iPad에서는 -8, -8입니다. 그래서 이들은 정적 값이므로, 어떻게하면 런타임에 프로그래밍 방식으로 제약 조건을 다루지 않고 안정적으로 가장자리에 scrollview 가장자리를 삽입 할 수 있습니까?
하나의 기기 화면 크기를 수정할 수는 있지만 다른 화면 크기는 깨질 수 있습니다.
또한 실제로 크기 클래스를 사용하고 싶지 않지만 크기 클래스를 해제하더라도 한 곳에서 제약 조건을 편집 할 때 하나의 통합보기를 얻지 못합니다. 그래서 이것은 6 번해야 할 일을 효과적으로 배가시킵니다. 이것은 저에게 이미 우스꽝스러운 시간을 요구하고 있습니다.
제안 사항?