本文主要是介绍Xcode9学习笔记47 - 单元格被选中获、取消选中的图标,自定义UITableView单元格Accessory样式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
import UIKit
class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {//表格视图数据源协议、表格视图代理协议override func viewDidLoad() {super.viewDidLoad()// Do any additional setup after loading the view, typically from a nib.let rect = CGRect(x: 0, y: 40, width: 320, height: 420)//创建一个显示区域let tableView = UITableView(frame: rect)//初始化一个表格视图,并设置其位置和尺寸tableView.delegate = self//设置表格视图的代理为当前的视图控制器类tableView.dataSource = self//设置表格视图的数据源为当前的视图控制器类self.view.addSubview(tableView)//将表格视图添加到当前视图控制器的根视图中}//添加一个代理方法,用来设置表格视图拥有的行数func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {return 7}//添加一个代理方法,用来初始化或复用表格视图中的单元格func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {let identifier = "reusedCell"//创建一个字符串,作为单元格的复用标识符//单元格的标识符可以看作是一种复用机制,此方法可以从所有已经开辟内存的单元格里面,选择一个具有同样标识符的、空闲的单元格var cell = tableView.dequeueReusableCell(withIdentifier: identifier)//如果在可重用单元格队列中,没有可以重复使用的单元格,则创建新的单元格。新单元格拥有一个复用标识符if cell == nil {cell = UITableViewCell(style: UITableViewCellStyle.subtitle, reuseIdentifier: identifier)}let rowNum = indexPath.row//获取当前单元格在段落中的行数cell?.textLabel?.text = "Cell item \(rowNum)"return cell!//返回设置好的单元格对象}//添加一个代理方法,用来响应单元格的点击事件func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {let cell = tableView.cellForRow(at: indexPath)//获取表格中被点击的单元格//如果被点击的单元格没有显示附加图标,则显示复选标记图标,表示当前单元格处于选中状态if cell?.accessoryType == UITableViewCellAccessoryType.none {cell?.accessoryType = UITableViewCellAccessoryType.checkmark} else {cell?.accessoryType = UITableViewCellAccessoryType.none}}override func didReceiveMemoryWarning() {super.didReceiveMemoryWarning()}
}
这篇关于Xcode9学习笔记47 - 单元格被选中获、取消选中的图标,自定义UITableView单元格Accessory样式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!