【#文档大全网# 导语】以下是®文档大全网的小编为您整理的《iOS培训-斗鱼直播APP之游戏推荐展示》,欢迎阅读!
玩转【斗鱼直播APP】系列之游戏推荐展示
作者:小码哥教育
游戏推荐展示
展示效果
展示效果
思路分析
其实这个实现比较简单,也是有两种方案
UIScrollView:直接在上面放上UIButton即可 UICollectionView:每一个游戏用一个Cell来展示
方案选择
方案二:UICollectionView来实现
一方面可以循环利用,另一方面UICollectionView真的非常好用喔
界面搭建
自定义RecommendGameView
由于内容比较固定,直接通过xib描述
添加UICollectionView即可
设置UICollectionView的布局,设置数据源以及实现数据源方法(见代码) 切记:设置自定义View的autoresizingMask = .None,否则控件将不能
显示
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
classRecommendGameView:UIView{ // MARK: 控件属性
@IBOutlet weak var collectionView:UICollectionView!
// MARK: 系统回调
override func awakeFromNib(){ super.awakeFromNib()
autoresizingMask =.None
let layout = collectionView.collectionViewLayout
as!UICollectionViewFlowLayout
layout.itemSize =CGSize(width: kGameCellW, height:
kGameViewH)
collectionView.contentInset =UIEdgeInsets(top:0, left:10,
bottom:0, right:10)
} }
// MARK:- 提供快速创建的类方法 extension RecommendGameView{
class func recommendGameView()->RecommendGameView{
returnNSBundle.mainBundle().loadNibNamed("RecommendGameView",
owner:nil, options:nil).first as!RecommendGameView
} }
25. 26. 27. 28. 29. 30. 31. 32.
// MARK:- 遵守UICollectionView的数据源&代理 extension
RecommendGameView:UICollectionViewDataSource,UICollectionViewDelegate{ func collectionView(collectionView:UICollectionView,
numberOfItemsInSection section:Int)->Int{
return10 }
func collectionView(collectionView:UICollectionView,
cellForItemAtIndexPath indexPath:NSIndexPath)->UICollectionViewCell{ let cell =
collectionView.dequeueReusableCellWithReuseIdentifier(kGameCellID, forIndexPath: indexPath)as!CollectionGameCell
cell.backgroundColor =
indexPath.item %2==0?UIColor.redColor():UIColor.blueColor()
return cell } }
将自定义View添加到UICollectionView中
33. 34. 35. 36. 37. 38.
懒加载RecommendGameView对象 将gameView添加到UICollectionView中 设置UICollectionView的内边距 代码如下:
懒加载RecommendCycleView
1. private lazy var gameView :RecommendGameView={ 2. let gameView =RecommendGameView.recommendGameView() 3. gameView.frame =CGRect(x:0, y:-kGameViewH, width: kScreenW,
height: kGameViewH)
4.
return gameView
本文来源:https://www.wddqxz.cn/0ea565f1f605cc1755270722192e453610665bd3.html