簡體   English   中英

動態大小UICollectionView單元格

[英]Dynamic size UICollectionView cell

在此輸入圖像描述

1)如何使用UICollectionView實現圖像UICollectionView

2)我試過-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath方法&傳遞了不同的大小,但它在單元格之間留下了空格。 我可以清空這些空間嗎? 我希望每個細胞都有不同的高度和寬度

當前輸出: 在此輸入圖像描述

對不起,這是超級晚了......但也許這會幫助那些尚未找到答案的人。 如果您將圖像放在一個數組中,則可以簡單地引用圖像大小並從那里調整單元格大小:

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath
{
    UIImage *image = [imageArray objectAtIndex:indexPath.row];
//You may want to create a divider to scale the size by the way..
    return CGSizeMake(image.size.width, image.size.height); 
}

希望這可以幫助..

也許這種布局符合您的需求。 請看一下這個項目: https//github.com/betzerra/MosaicLayout

我不確定100%它是否完全滿足您的要求,但在最壞的情況下,它可以幫助您編寫自定義UICollecionViewFlowLayout(這是實現目標的唯一方法)

您無法使用標准UICollectionViewFlowLayout實現類似問題的結果,在其基本實現(沒有子類化)中創建網格布局。

要獲得所需的內容,您應該創建自己的UICollectionViewLayout (或者可能是UICollectionViewFlowLayout )子類,在其中執行將每個項目放在右側框架中所需的所有計算。

看看這里有一個很棒的教程 ,這里有類似於你想要的東西

不是在一行中創建圖像的可變高度,而是固定相同大小的圖像高度,但可以在一行中具有不同的寬度。創建這樣的組合和顯示,並且可以將不同高度的相同單元重用於行中不同寬度的一個或多個圖像。 我已經完成了同樣的感覺,就像你正在尋找谷歌圖像搜索一樣

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM