2014-09-17 2 views
-1

이 자동 레이아웃에서 완전히 손실되었습니다. 화면 크기, 화면 너비의 셀 및 동적 높이로 컬렉션보기를 설정해야합니다.UIImageView는 제한이있는 셀 크기로 크기가 조정되지 않습니다.

화면의 크기는 UICollectionView입니다. storyboard에 셀이 생성되었습니다. 셀의 높이가 동적 높이 함께 동작 동안 변경된다

- (CGSize)collectionView:(UICollectionView *)collectionView 
        layout:(UICollectionViewLayout*)collectionViewLayout 
    sizeForItemAtIndexPath:(NSIndexPath *)indexPath 

셀이 후행과 슈퍼 뷰 공간 선도 (컬렉션 뷰)를 구속하고 있으며, 전 (화면 폭 expected-로 그 크기를 얻을 어쩌면 내가 뭔가 잘못 하긴하지만).

해당 셀 안에는 UIImageView (clipped subviews)이 있습니다. 내가하고 싶은 일은이 이미지 뷰의 너비를 셀의 너비와 높이를 동적으로 설정하는 것입니다.

그래서 코드를 변경할 때 이미지 높이가 제한되는 콘센트를 설정합니다. 그것은 위대한 작품. 이미지보기의 상단, 왼쪽 및 오른쪽에서 이 셀에 고정되어 있습니다.

실제로 무슨 일이 일어나는가, 시뮬레이터의 모든 것이 제자리에 있으며 잘 작동한다는 것입니다. 장치에서 이미지보기는 셀 크기가 (셀이 올바른 크기의 화면 크기 임)보다 작은 이므로 예상대로 이미지보기가 (0,0)에서 시작하고 오른쪽 높이가 있지만 너비 - 세포의 크기는 아니지만 작다. (2/3).

편집 : 와우! 나는 아주 놀라운 것을 발견했다. 만약 내가 이미지에서 볼 수있는 공간을 세포에 후행 공간을 제거 장치 및 시뮬레이터에서 작동합니다. 만약 내가 그것을 다시 추가, 그것은 시뮬레이터 및 장치에서 작동합니다. WAHT가 맞습니까 ??

무엇이 여기에 있습니까?

+0

정말이 질문에 대해 나쁘지는 않지만 열심히 일하면서 해결책을 찾았습니다. 다른 사람들이 그것에 대해 배우고, 유권자가 좋은 삶을 살며 자신을 사랑하기를 바랍니다. – Curnelious

답변

0

유일한 해결책은 이미지보기의 너비에 제한을 설정하고 출력을 설정하고 런타임 중에 변경하는 것입니다.

여전히 셀 크기가 변경되면 왜 정렬되지 않은 이미지보기도 변경되지 않습니다. 시뮬레이터에서는 셀 크기가 런타임 전에 알 수 있기 때문에 시뮬레이터에서는 작동하지만 장치에서는 작동하지 않는다는 아이디어가 있습니다.

따라서 모든 동적보기에 대해 너비/높이 제한을 설정하십시오. 그것은 많은 문제를 해결하고 당신에게 자유를줍니다.

관련 문제