-
常量不統(tǒng)一忘衍,一個(gè)用負(fù)數(shù)逾苫,一個(gè)用 MAX
UITableViewAutomaticDimension = -1.000000 UICollectionViewFlowLayoutAutomaticSize = {1.7976931348623157e+308, 1.7976931348623157e+308}
-
HeaderFooter 類名、Cell 繼承鏈不同
@interface UITableViewHeaderFooterView : UIView @interface UITableViewCell : UIView @interface UICollectionReusableView : UIView @interface UICollectionViewCell : UICollectionReusableView
自定義子類時(shí)枚钓,要實(shí)現(xiàn)的 init 方法也都不同
// UITableViewHeaderFooterView - initWithReuseIdentifier: // UITableViewCell - initWithStyle: reuseIdentifier: // UICollectionReusableView - initWithFrame: // UICollectionViewCell - initWithFrame:
還有铅搓,所有類都有屬性 contentView
,唯獨(dú) UICollectionReusableView
沒(méi)有
-
HeaderFooter 的代理方法不同
- (UIView *)tableView: viewForHeaderInSection: - (UIView *)tableView: viewForFooterInSection: - (UICollectionReusableView *)collectionView: viewForSupplementaryElementOfKind: atIndexPath:
可能我了解得還不夠深搀捷,如果 CollectionView 可以注冊(cè)自定義的
UICollectionElementKind...
, 那這一點(diǎn)應(yīng)該還說(shuō)得的過(guò)去獲取復(fù)用 HeaderFooter 的方法名星掰、表現(xiàn)也不同
// nullable 還得手動(dòng)判 nil ,手動(dòng)創(chuàng)建 - (nullable ...)dequeueReusableHeaderFooterViewWithIdentifier: // nonnull 類似 Cell嫩舟,很好用 - (...)dequeueReusableSupplementaryViewOfKind: withReuseIdentifier: forIndexPath: