1

我正在使用KDCalendarView類在我的項目中顯示日曆。現在我想在每個日期顯示一些數據。但是對於每一個日期,都可能有一些可能的值來自服務器。現在我可以爲sizeForItemAtIndexPath中的每個項目增加寬度和高度。但這裏的問題是它爲每個項目單獨設置大小。但我需要做的是取決於7個連續的值,我必須將它們設置爲行的高度而不僅僅是項目。UICollectionView:如何根據文本長度動態設置行高

enter image description here

作爲圖像中所示,在日期2項的第一行0高度應滿行不只是該特定項目的高度。

- (NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView 
{ 
    return 1; 
} 

- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section 
{ 
    if (!self.displayMonthDate) { 
     return 0; 
} 
NSInteger numberOfDaysPlusOffset = _numberOfDaysInMonth + _firstWeekdayOfMonthIndex; 
NSInteger remainingDaysToFillCalendar = 7 - (numberOfDaysPlusOffset % 7); 
return numberOfDaysPlusOffset + remainingDaysToFillCalendar; 
} 

- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView 
     viewForSupplementaryElementOfKind:(NSString *)kind 
          atIndexPath:(NSIndexPath *)indexPath { 
//Used for each cell to draw 
} 

- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath { 
//Setting item size here 
} 
+0

的一種方法是,你可以在第7欄找到最大高度,然後返回最大高度出7第一行。當你的行更改找到下一個7列的最大高度並返回它。 – Dalvik

+0

我也在考慮這個說明,但我想是否有其他可能的方式來實現這一點。 – Arti

+0

@Arti爲什麼不使用更新後的版本?我希望您在KDCalendar存儲庫中看到了它的明確說明 - > *此存儲庫將不會主動維護更長時間*並且上次更新時間爲8個月前。 –

回答

0

我想你可以嘗試使用:UICollectionViewFlowLayoutAutomaticSize

相關問題