我的最好的辦法,以解決這個問題是以某種方式告訴每一個細胞,如果它是一節或一排最後一個單元格的最後一排;那麼單元格會關閉有問題的邊界,部分標題會繪製頂部邊框以及底部,並且所有內容都將變得渾濁。不過,我不知道如何實現這一點。
你所描述的或多或少是我在類似場景中所做的。我添加了一個邊界屬性,我的手機:
typedef NS_OPTIONS(NSInteger, TLGridBorder) {
TLGridBorderNone = 0,
TLGridBorderTop = 1 << 0,
TLGridBorderRight = 1 << 1,
TLGridBorderBottom = 1 << 2,
TLGridBorderLeft = 1 << 3,
TLGridBorderAll = TLGridBorderTop | TLGridBorderRight | TLGridBorderBottom | TLGridBorderLeft,
};
@interface TLGridCellView : UIView
@property (nonatomic) TLGridBorder border;
@end
然後,我將邊框設置爲我的視圖控制器的電池配置:
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
TLGridCellView *cell = ...;
if (indexPath.item == self collectionView:collectionView numberOfItemsInSection:indexPath.section - 1) {
cell.border = TLGridBorderLeft;
} else {
cell.border = TLGridBorderLeft | TLGridBorderRight;
}
return cell;
}
我最終做了一件很喜歡這樣 - 我只要我把它變成一個要點在這裏發表一個答案,所以我可以分享。 –