Próbuję skonfigurować iOS 8 cells auto zaklejania w UICollectionViewController
:
Utworzyłem podstawowy projekt korzystając storyboardy i mające jeden UICollectionViewCell tam z etykietą ograniczone do Granice komórka. Następnie połączyłem etykietę tej komórki z klasą komórki, aby uzyskać do niej dostęp programowy.
Bez podania numeru estimatedItemSize
wszystko działa poprawnie (z wyjątkiem automatycznego rozmiaru).UICollectionView Auto komórkowych Rozmiar z autoLayout iOS 8
Kiedy określić estimatedItemSize
ten sposób:
- (void)viewDidLoad {
[super viewDidLoad];
UICollectionViewFlowLayout *layout = (UICollectionViewFlowLayout *)self.collectionViewLayout;
layout.estimatedItemSize = CGSizeMake(100.0f, 30.0f);
}
awarii aplikacji z tych komunikatów o błędach:
the behavior of the UICollectionViewFlowLayout is not defined because:
the item width must be less than the width of the UICollectionView minus the section insets left and right values.
Please check the values return by the delegate.
myślę, jestem ustawienie estimatedItemSize
w niewłaściwym miejscu, albo, jeśli już mam określony rozmiar elementu ustawiony w scenorysie, więc jest w jakiś sposób sprzeczny z szacunkowym rozmiarem.
Tak, to powinno działać, ale zwróć uwagę, że dla iPhone 6 i 6+ Twoja etykieta nie pokryłaby całej szerokości ekranu ... – jerrygdm
Zrobiłem ujście i zmieniłem wartość ograniczenia w czasie wykonywania na szerokość ekranu telefonu. –
Mam komórkę o szerokości 150, ale jej nie zmienia rozmiaru dla iPhone 6 i 6 plus. możesz go znaleźć tutaj http://stackoverflow.com/questions/27981200/how-to-resize-uicollectionviewcell-in-iphone-6-and-6-plus-using-autolayout – Rugmangathan