博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【swift学习笔记】三.使用xib自定义UITableViewCell
阅读量:6249 次
发布时间:2019-06-22

本文共 2381 字,大约阅读时间需要 7 分钟。

使用xib自定义tableviewCell看一下效果图

1.自定义列

新建一个xib文件 carTblCell,拖放一个UITableViewCell,再拖放一个图片和一个文本框到tableviewcell上

并给我们的xib一个标识

为了学习,我这里的xib和后台的class是分开建的。我们再建一个cocoa touch class文件名称为CarCellTableViewCell继承自UITableViewCell

并把我们的xib和新建的CarCellTableViewCell建立联接

 

在CarCellTableViewCell里建立和xib的图片和文本框的输出

import UIKitclass CarCellTableViewCell: UITableViewCell {    @IBOutlet weak var cellImg: UIImageView!    @IBOutlet weak var lbCell: UILabel!    override func awakeFromNib() {        super.awakeFromNib()        // Initialization code        cellImg.layer.borderWidth = 1        cellImg.layer.masksToBounds = true        //cellImg.layer.cornerRadius = 31    }    override func setSelected(selected: Bool, animated: Bool) {        super.setSelected(selected, animated: animated)        // Configure the view for the selected state    }}

 

2.关联cell和tableview

1. 在main.storyboard上拖放一个uitableview,并在后台代码建立输出联接

1.在load事件里注册xib

2.在tableveiw的方法里得到当前的列,指定数据源。

import UIKitclass ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {    @IBOutlet var tableView: UITableView!    var tableData: [String] = ["BMW", "Ferrari", "Lambo"]        override func viewDidLoad() {        super.viewDidLoad()        // Do any additional setup after loading the view, typically from a nib.        let cellNib = UINib(nibName: "carTblCell", bundle: nil)        tableView.registerNib(cellNib, forCellReuseIdentifier: "cell")    }    override func didReceiveMemoryWarning() {        super.didReceiveMemoryWarning()        // Dispose of any resources that can be recreated.    }    func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {         return tableData.count    }        func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {        let cell: CarCellTableViewCell = self.tableView.dequeueReusableCellWithIdentifier("cell") as! CarCellTableViewCell        cell.lbCell.text = tableData[indexPath.row]        cell.cellImg.image = UIImage(named: tableData[indexPath.row])                return cell    }        func tableView(tableView: UITableView, didDeselectRowAtIndexPath indexPath: NSIndexPath) {        print("\(indexPath.row)")    }        func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {        return 70    }}
http://www.cnblogs.com/li-peng/p/5543415.html
你可能感兴趣的文章
总结:44个Python3字符串内置方法大全及示例
查看>>
2018年最值得关注的30个Vue开源项目
查看>>
docker之DockerSwarm的了解
查看>>
大区块的BCH给智能合约更大的发展潜力
查看>>
springcloud(五):熔断监控Hystrix Dashboard
查看>>
七年软件测试历程,回过头来,最能帮助我的还是这些.....
查看>>
yum 安装nginx
查看>>
前端(js+JQuery非空校验)
查看>>
[Android] ImageView.ScaleType设置图解
查看>>
银行卡卡号验证
查看>>
VS的内存断点
查看>>
Jenkins实战演练之Linux系统节点管理
查看>>
为什么init脚本需要lock文件
查看>>
利用python的zmail模块发送邮件
查看>>
DIY-希捷硬盘固件问题的解决方法
查看>>
有关电脑不能上网的检查方法
查看>>
我的友情链接
查看>>
Spring5最新源码导入Eclipse详解
查看>>
Linux 基础学习
查看>>
我的友情链接
查看>>