根据你想要如何显示你的数据(即图片+标题+有关图片的细节或者只是在简单的,普通的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