IOS SWIFT---使用UICollectionView
上一篇我们完成了第一个用swift写的ios小程序,今天我们拓展一下那个程序,使用UICollectionView。
- 提示框里面显示"Outlets"里面有fataSource和delegate
- 数据源和委托属性与当前的视图控制器关联
- 程序运行时,会在相关控制器中寻找相关方法
import UIKit class CountCollectionViewCell: UICollectionViewCell { @IBOutlet weak var label: UILabel! var mUtil = Util() override init(frame:CGRect) { super.init(frame: frame) } required init(coder aDecoder: NSCoder) { super.init(coder: aDecoder) } func setViewLabel(index:NSIndexPath){ self.label.text=mUtil.getCharacter(index) } }
import UIKit class ViewController: UIViewController,UICollectionViewDataSource,UICollectionViewDelegate { @IBOutlet weak var textField: UITextField! @IBOutlet weak var mCollectionView: UICollectionView! var cell:CountCollectionViewCell? = nil var mUtil = Util() //当控制器的视图类加载完成时调用 override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. } //当系统触发内存警告时调用 override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } //cell个数 func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int{ return 15; } //相当于android中的getview func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell{ cell = collectionView.dequeueReusableCellWithReuseIdentifier("cell", forIndexPath: indexPath) as CountCollectionViewCell cell!.setViewLabel(indexPath) return cell! } //具体点击的哪个cell func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) { textField.text = mUtil.getCharacter(indexPath) } }
最重要的就是相当于android中的getview方法,我们把我们的cell回调给上层得以在界面中显示出来,接下来看看效果
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。