【swift学习笔记】三.使用xib自定义UITableViewCell
使用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 codecellImg.layer.borderWidth = 1cellImg.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! CarCellTableViewCellcell.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} }
【swift学习笔记】三.使用xib自定义UITableViewCell相关推荐
- iOS开发UI篇—使用xib自定义UItableviewcell实现一个简单的团购应用界面布局
iOS开发UI篇-使用xib自定义UItableviewcell实现一个简单的团购应用界面布局 iOS开发UI篇-使用xib自定义UItableviewcell实现一个简单的团购应用界面布局 一.项目 ...
- K8S 学习笔记三 核心技术 Helm nfs prometheus grafana 高可用集群部署 容器部署流程
K8S 学习笔记三 核心技术 2.13 Helm 2.13.1 Helm 引入 2.13.2 使用 Helm 可以解决哪些问题 2.13.3 Helm 概述 2.13.4 Helm 的 3 个重要概念 ...
- Spring框架学习笔记(三)(AOP,事务管理)
Spring框架学习笔记(三) 九.AOP 9.1 AOP的注解配置 (1) 新建计算器核心功能(模拟:不能在改动核心代码) (2) 建立一个普通的Java类写增强代码(面向切面编程),使用Sprin ...
- SurfaceFlinger学习笔记(三)之SurfaceFlinger进程
概述 本系列是基于android Q 即android10 SurfaceFlinger学习笔记(一)应用启动流程 SurfaceFlinger学习笔记(二)之Surface SurfaceFling ...
- 【AngularJs学习笔记三】Grunt任务管理器
为什么80%的码农都做不了架构师?>>> #0 系列目录# AngularJs学习笔记 [AngularJs学习笔记一]Bower解决js的依赖管理 [AngularJs学习笔 ...
- Hive学习笔记三之函数操作
文章目录 5 函数 5.1 系统内置函数 5.2 常用内置函数 5.2.1 空字段赋值 5.2.2 CASE WHEN THEN ELSE END(类似于java中的switch case) 5.2. ...
- J2EE学习笔记三:EJB基础概念和知识 收藏
J2EE学习笔记三:EJB基础概念和知识 收藏 EJB正是J2EE的旗舰技术,因此俺直接跳到这一章来了,前面的几章都是讲Servlet和JSP以及JDBC的,俺都懂一些.那么EJB和通常我们所说的Ja ...
- 【swift学习笔记】二.页面转跳数据回传
上一篇我们介绍了页面转跳:[swift学习笔记]一.页面转跳的条件判断和传值 这一篇说一下如何把数据回传回父页面,如下图所示,这个例子很简单,只是把传过去的数据加上了"回传"两个字 ...
- tensorflow学习笔记(三十二):conv2d_transpose (解卷积)
tensorflow学习笔记(三十二):conv2d_transpose ("解卷积") deconv解卷积,实际是叫做conv_transpose, conv_transpose ...
最新文章
- 面试题整理 2:求链表倒数第 k 个结点
- 英国帝国理工出品:SSIM对抗攻击
- URL2Video:把网页自动创建为短视频
- 算法训练营02-预备知识和时间复杂度分析
- 教你自制.NET Core Global Tools
- python3单例-python3如何运行文件夹python单例模式
- Springboot项目启动:报错The last packet sent successfully to the server was 0 milliseconds ago
- Linux性能监控-Top
- Python基础学习:svn导出差异文件脚本
- html是非结构数据吗,Python处理非结构数据
- opencv获取mat的指针_opencv中Mat类型数据操作与遍历
- 深入浅出理解输入输出阻抗-音频电路输入输出阻抗
- RSA加密解密及制作软件license
- 拼多多-桌上暖垫排行榜-好评榜调研
- window系统使用 bash 新建 vue3+ts 项目以及 preset 模板使用
- Ext js 4 全选和反选
- redis key导出及删除
- 0907 关于杯子的检测
- 大悲寺——依教奉行溯正源,良苦用心谁人知?纵然世间一比丘,不退初心证菩提。[转]...
- 【河北OI 2012 DAY1】采花 线段树