您的位置:首页 > 移动开发 > Swift

Swift 2.0 自定义cell和不同风格的cell

2016-03-16 18:25 337 查看
昨天我们写了使用系统的cell怎样创建tableView,今天我们再细分一下,就是不同风格的cell,我们怎写代码。先自己创建一个cell,继承于UItableviewcell 我们看看 cell 里面的代码怎么写的,我现在把 整个 cell 代码展示出来。

import UIKit

class HomeTableViewCell: UITableViewCell {

let oneImage:UIImageView = UIImageView()

override init(style: UITableViewCellStyle, reuseIdentifier: String?) {

super.init(style: style, reuseIdentifier: reuseIdentifier)
//  创建UI方法
creatUI()

}
//  这个方法也是必须要实现的,和重写初始化方法在一起实现。
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}

// 创建UI的方法,这里只写了一张简单的图片。
func creatUI()
{
oneImage.frame=CGRectMake(0, 0, self.contentView.bounds.width, self.contentView.bounds.height)

self.contentView .addSubview(oneImage)
}

override func awakeFromNib() {
super.awakeFromNib()
// Initialization co

}

override func setSelected(selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
}


这里就是整个cell 的代码了,现在我们看看控制器里面是怎么写的,这里我就只展示一个方法的代码了,剩下的和上篇博客里面的一样,就不在累赘了。

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

if(indexPath.section != 1)
{
// 系统的cell
let cell:UITableViewCell = tableView.dequeueReusableCellWithIdentifier("SwiftCell", forIndexPath: indexPath)
cell.textLabel?.text="你真的很帅"
return cell
}
else
{
// 自定义的cell
let cellone:HomeTableViewCell = HomeTableViewCell()
cellone.oneImage.image = UIImage(named:"屏幕快照")
return cellone

}
}


到这里我们就完成了整个自定义cell的工作,当然也只是简简单单的家了一张图片,思路整体上就是这个思路,给 cell 里面再添加其他控件的大家可以自己动手试试!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: