Xcode9学习笔记49 - 插入UITableView单元格

2024-06-16 06:48

本文主要是介绍Xcode9学习笔记49 - 插入UITableView单元格,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

import UIKit
class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {//表格视图数据源协议、表格视图代理协议var months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]//创建数组作为表格的数据来源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//设置表格视图的数据源为当前的视图控制器类tableView.setEditing(true, animated: false)//在默认状态下开启表格的编辑模式self.view.addSubview(tableView)//将表格视图添加到当前视图控制器的根视图中}//添加一个代理方法,用来设置表格视图拥有的行数func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {return months.count}//添加一个代理方法,用来初始化或复用表格视图中的单元格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 = months[rowNum]return cell!//返回设置好的单元格对象}//添加一个代理方法,用来设置单元格的编辑模式为插入模式func tableView(_ tableView: UITableView, editingStyleForRowAt indexPath: IndexPath) -> UITableViewCellEditingStyle {return UITableViewCellEditingStyle.insert}//添加一个代理方法,用来响应单元格的插入事件func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath) {if editingStyle == UITableViewCellEditingStyle.insert {//判断如果编辑模式为插入,则执行之后的代码let rowNum = indexPath.row//获取插入位置的单元格在段落中的行数months.insert("Honey Moon", at: rowNum)//往数组中同步插入数据,及时更新数据源let indexPaths = [indexPath]//创建一个包含待插入单元格位置信息的数组//接着往表格视图中的指定位置,插入新单元格tableView.insertRows(at: indexPaths, with: UITableViewRowAnimation.right)}}override func didReceiveMemoryWarning() {super.didReceiveMemoryWarning()}
}



这篇关于Xcode9学习笔记49 - 插入UITableView单元格的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1065740

相关文章

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Python中bisect_left 函数实现高效插入与有序列表管理

《Python中bisect_left函数实现高效插入与有序列表管理》Python的bisect_left函数通过二分查找高效定位有序列表插入位置,与bisect_right的区别在于处理重复元素时... 目录一、bisect_left 基本介绍1.1 函数定义1.2 核心功能二、bisect_left 与

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

解决mysql插入数据锁等待超时报错:Lock wait timeout exceeded;try restarting transaction

《解决mysql插入数据锁等待超时报错:Lockwaittimeoutexceeded;tryrestartingtransaction》:本文主要介绍解决mysql插入数据锁等待超时报... 目录报错信息解决办法1、数据库中执行如下sql2、再到 INNODB_TRX 事务表中查看总结报错信息Lock

Python实现获取带合并单元格的表格数据

《Python实现获取带合并单元格的表格数据》由于在日常运维中经常出现一些合并单元格的表格,如果要获取数据比较麻烦,所以本文我们就来聊聊如何使用Python实现获取带合并单元格的表格数据吧... 由于在日常运维中经常出现一些合并单元格的表格,如果要获取数据比较麻烦,现将将封装成类,并通过调用list_exc

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示

通过C#获取Excel单元格的数据类型的方法详解

《通过C#获取Excel单元格的数据类型的方法详解》在处理Excel文件时,了解单元格的数据类型有助于我们正确地解析和处理数据,本文将详细介绍如何使用FreeSpire.XLS来获取Excel单元格的... 目录引言环境配置6种常见数据类型C# 读取单元格数据类型引言在处理 Excel 文件时,了解单元格

SpringBoot整合mybatisPlus实现批量插入并获取ID详解

《SpringBoot整合mybatisPlus实现批量插入并获取ID详解》这篇文章主要为大家详细介绍了SpringBoot如何整合mybatisPlus实现批量插入并获取ID,文中的示例代码讲解详细... 目录【1】saveBATch(一万条数据总耗时:2478ms)【2】集合方式foreach(一万条数

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析