效果:
collectionView的數據源方法
- (UICollectionViewCell *) collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
newsCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"news" forIndexPath:indexPath];
NSString *urlString = self.arrayList[indexPath.item];
if (![self.childViewControllers containsObject:cell.newsVc]) {
[self addChildViewController:(UIViewController *)cell.newsVc];
}
cell.urlStr = urlString;
return cell;
}
cell的自定義如下
- (void)setUrlStr:(NSString *)urlStr
{
_urlStr = urlStr;
self.newsVc.urlStr = urlStr;
}
- (void)awakeFromNib
{
UIStoryboard *sb = [UIStoryboard storyboardWithName:@"news" bundle:nil];
self.newsVc = sb.instantiateInitialViewController;
// 設置 view frame,否則,view frame 的大小不會調整!
self.newsVc.view.frame = self.bounds;
// 將 vc 的視圖添加到 cell 中
[self addSubview:self.newsVc.view];
}