Tôi cố gắng để thiết lập iOS 8 tế bào tự động định cỡ trong UICollectionViewController
:
tôi đã tạo ra một thiết kế cơ bản sử dụng Storyboards và được thiết kế một UICollectionViewCell đó với một nhãn hạn chế đến giới hạn của ô. Sau đó, tôi liên kết nhãn của ô đó với lớp của Cell để có thể truy cập nó theo chương trình.
Nếu không chỉ định estimatedItemSize
, mọi thứ hoạt động tốt (ngoại trừ kích thước tự động, tất nhiên).UICollectionView Kích Auto di động với AutoLayout iOS 8
Khi tôi định estimatedItemSize
theo cách này:
- (void)viewDidLoad {
[super viewDidLoad];
UICollectionViewFlowLayout *layout = (UICollectionViewFlowLayout *)self.collectionViewLayout;
layout.estimatedItemSize = CGSizeMake(100.0f, 30.0f);
}
ứng dụng bị treo với các thông báo lỗi:
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.
Tôi nghĩ rằng, tôi đang thiết estimatedItemSize
ở một nơi sai, hoặc, nếu tôi đã có một kích thước mục được chỉ định được thiết lập trong bảng phân cảnh, do đó, nó xung đột bằng cách nào đó với kích thước ước tính.
Có nó sẽ hoạt động nhưng chú ý rằng đối với iphone 6 và 6+ nhãn của bạn sẽ không bao gồm tất cả chiều rộng màn hình ... – jerrygdm
Tôi đã thực hiện một lối thoát và thay đổi giá trị của ràng buộc khi chạy sang chiều rộng màn hình của điện thoại. –
tôi có ô có chiều rộng 150 nhưng không đổi kích thước cho iphone 6 và 6 plus. bạn có thể tìm thấy nó ở đây http://stackoverflow.com/questions/27981200/how-to-resize-uicollectionviewcell-in-iphone-6-and-6-plus-using-autolayout – Rugmangathan