根據你想要如何顯示你的數據(即圖片+標題+有關圖片的細節或者只是在簡單的,普通的imageView中),因爲這個懶加載是事實,它確實更容易去UITableView或UICollectionView這兩種類別的默認,內置和難以避免的行爲。
它們都是可滾動的,並顯示可以通過StoryBoard設計的單元格(UITableViewCell或UICollectionViewCell)(例如,在那裏添加一個imageView,下面有一個標籤......)並使用委託模式懶惰地詢問控制器在單元即將到達屏幕時顯示。
讓我們假設你希望使用的CollectionView(當時喲可以顯示網格狀佈局的幾個ImageView的),但一會的tableView工作,99%的方式相同。 你要做的第一件事是的CollectionView添加到您的故事板,並添加一個的CollectionView裏面UICollectionViewCell,並與自己的設計定製(即裏面添加一個ImageView的)。你的CollectionView可以包含多個單元設計(只是一個ImageView的正常圖像,用「新」絲帶爲新增加的圖像的ImageView的,用「最後編輯」文本框用於編輯圖像的ImageView的),但你應該在給予(仍storyBoard)每個設計的唯一標識符,在每個設計中爲每個單元的UI組件設置一個標籤值。
一旦佈局完成後,申報場景控制器作爲數據源爲您的CollectionView和實施方法
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section;
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath;
第一個必須返回總順應了UICollectionViewDataSource協議要顯示的圖像數量(以便底層滾動視圖可以縮放其內容大小),第二個是讓您返回單元格以顯示給定的indexPath,它基本上是一個包裝類,它包含ns項目索引和部分索引。 當單元格即將出現在屏幕上時,第二種方法被稱爲lazily,因此在此方法中,您可以根據indexPath.item值(作爲要顯示的圖像的索引)檢索縮略圖圖像, StoryBoard通過將- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath;
發送到collectionView來定義設計。通過將-(UIVIew *)viewWithTag:(NSInteger)tag
消息發送到上一個方法返回的單元格,然後將它們的文本/圖像屬性設置爲要顯示給用戶的內容,通過標記值獲取單元的設計元素。
這是一個相當合理的方法你的答案,我會很樂意幫助你更技術上,如果證明是必要的。
乾杯,
很好的答案。 +1用於收集視圖方法。 – Cyrille