iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Swift如何使用表格组件实现单列表
  • 528
分享到

Swift如何使用表格组件实现单列表

2023-06-29 00:06:35 528人浏览 安东尼
摘要

本篇文章给大家分享的是有关Swift如何使用表格组件实现单列表,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1、样例说明:(1)列表内容从Controls.plist文件中读取

本篇文章给大家分享的是有关Swift如何使用表格组件实现单列表,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

1、样例说明:

(1)列表内容从Controls.plist文件中读取,类型为Array 。
(2)点击列表项会弹出消息框显示该项信息。
(3)按住列表项向左滑动,会出现删除按钮。点击删除即可删除该项。

2、效果图

Swift如何使用表格组件实现单列表

3、单元格复用机制

由于普通的表格视图中对的单元格形式一般都是相同的,所以本例采用了单元格复用机制,可以大大提高程序性能。
实现方式是初始化创建  UITableView 实例时使用  reGISterClass(UITableViewCell.self, forCellReuseIdentifier: "SwiftCell") 创建一个可供重用的  UITableViewCell。并将其注册到UITableView,ID为 SwiftCell。
下次碰到形式(或结构)相同的单元就可以直接使用UITableView的dequeueReusableCellWithIdentifier 方法从UITableView中取出。

4、示例代码

--- ViewController.swift ---

import  UIKit class  ViewController :  UIViewController ,  UITableViewDelegate ,  UITableViewDataSource  {          var  ctrlnames:[ String ]?     var  tableView: UITableView ?          override  func  loadView() {         super .loadView()     }          override  func  viewDidLoad() {         super .viewDidLoad()                  //初始化数据,这一次数据,我们放在属性列表文件里         self .ctrlnames =   NSArray (contentsOfFile:             NSBundle .mainBundle().pathForResource( "Controls" , ofType: "plist" )!)  as ?  Array                  print ( self .ctrlnames)                  //创建表视图         self .tableView =  UITableView (frame:  self .view.frame, style: UITableViewStyle . Plain )         self .tableView!.delegate =  self         self .tableView!.dataSource =  self         //创建一个重用的单元格         self .tableView!.registerClass( UITableViewCell . self ,             forCellReuseIdentifier:  "SwiftCell" )         self .view.addSubview( self .tableView!)                  //创建表头标签         let  headerLabel =  UILabel (frame:  CGRectMake (0, 0,  self .view.bounds.size.width, 30))         headerLabel.backgroundColor =  UIColor .blackColor()         headerLabel.textColor =  UIColor .whiteColor()         headerLabel.numberOfLines = 0         headerLabel.lineBreakMode =  NSLineBreakMode . ByWordWrapping         headerLabel.text =  "常见 UIKit 控件"         headerLabel.font =  UIFont .italicSystemFontOfSize(20)         self .tableView!.tableHeaderView = headerLabel     }          //在本例中,只有一个分区     func  numberOfSectionsInTableView(tableView:  UITableView ) ->  Int  {         return  1;     }          //返回表格行数(也就是返回控件数)     func  tableView(tableView:  UITableView , numberOfRowsInSection section:  Int ) ->  Int  {         return  self .ctrlnames!.count     }          //创建各单元显示内容(创建参数indexPath指定的单元)     func  tableView(tableView:  UITableView , cellForRowAtIndexPath indexPath:  NSIndexPath )         ->  UITableViewCell     {         //为了提供表格显示性能,已创建完成的单元需重复使用         let  identify: String  =  "SwiftCell"         //同一形式的单元格重复使用,在声明时已注册         let  cell = tableView.dequeueReusableCellWithIdentifier(identify,             forIndexPath: indexPath)  as  UITableViewCell         cell.accessoryType =  UITableViewCellAccessoryType . DisclosureIndicator         cell.textLabel?.text =  self .ctrlnames![indexPath.row]         return  cell     }          // UITableViewDelegate 方法,处理列表项的选中事件     func  tableView(tableView:  UITableView , didSelectRowAtIndexPath indexPath:  NSIndexPath )     {         self .tableView!.deselectRowAtIndexPath(indexPath, animated:  true )                  let  itemString =  self .ctrlnames![indexPath.row]                  let  alertController =  UIAlertController (title:  "提示!" ,             message:  "你选中了【\(itemString)】" , preferredStyle: . Alert )         let  okAction =  UIAlertAction (title:  "确定" , style: . Default ,handler:  nil )         alertController.addAction(okAction)         self .presentViewController(alertController, animated:  true , completion:  nil )     }          //滑动删除必须实现的方法     func  tableView(tableView:  UITableView ,         commitEditingStyle editingStyle:  UITableViewCellEditingStyle ,         forRowAtIndexPath indexPath:  NSIndexPath ) {             print ( "删除\(indexPath.row)" )             let  index = indexPath.row             self .ctrlnames?.removeAtIndex(index)             self .tableView?.deleteRowsAtIndexPaths([indexPath],                 withRowAnimation:  UITableViewRowAnimation . Top )     }          //滑动删除     func  tableView(tableView:  UITableView ,         editingStyleForRowAtIndexPath indexPath:  NSIndexPath )         ->  UITableViewCellEditingStyle  {             return  UITableViewCellEditingStyle . Delete     }          //修改删除按钮的文字     func  tableView(tableView:  UITableView ,         titleForDeleteConfirmationButtonForRowAtIndexPath indexPath:  NSIndexPath )         ->  String ? {             return  "删"     }          override  func  didReceiveMemoryWarning() {         super .didReceiveMemoryWarning()     }}

以上就是Swift如何使用表格组件实现单列表,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网精选频道。

--结束END--

本文标题: Swift如何使用表格组件实现单列表

本文链接: https://www.lsjlt.com/news/321548.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Swift如何使用表格组件实现单列表
    本篇文章给大家分享的是有关Swift如何使用表格组件实现单列表,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1、样例说明:(1)列表内容从Controls.plist文件中读取...
    99+
    2023-06-29
  • Swift使用表格组件实现单列表
    本文实例为大家分享了Swift使用表格组件实现单列表的具体代码,供大家参考,具体内容如下 1、样例说明: (1)列表内容从Controls.plist文件中读取,类型为Array 。...
    99+
    2024-04-02
  • Swift实现表格视图单元格单选(1)
    本文实例为大家分享了Swift实现表格视图单元格单选的具体代码,供大家参考,具体内容如下 效果展示 前言 最近一个朋友问我,如何实现表格视图的单选?因为我之前用Objective-...
    99+
    2024-04-02
  • Swift实现表格视图单元格单选(2)
    本文实例为大家分享了Swift实现表格视图单元格单选的具体代码,供大家参考,具体内容如下 效果 前言 前段时间写了一篇博客: 表格视图单元格单选(一),实现起来并不复杂,简单易懂。...
    99+
    2024-04-02
  • Swift实现表格视图单元格多选
    本文实例为大家分享了Swift实现表格视图单元格多选的具体代码,供大家参考,具体内容如下 效果 前言 这段时间比较忙,没太多的时间写博客,前段时间写了一些关于表格视图单选的文章,想...
    99+
    2024-04-02
  • Vue组件库ElementUI实现表格列表分页效果
    ElementUI实现表格列表分页效果教程,供大家参考,具体内容如下 Element UI 是一套采用 Vue 2.0 作为基础框架实现的组件库,一套为开发者、设计师和产品经理准备的...
    99+
    2024-04-02
  • 微信小程序实现固定表头、列表格组件
    目录需求:功能点效果图实现思路具体代码(react\taro3.0)具体代码(小程序原生)总结需求: 微信小程序实现固定表头固定列表格组件(移动端做点小修改通用) 功能点 ...
    99+
    2024-04-02
  • swift表格控件使用方法详解(UITableview)
    本文实例为大家分享了swift表格控件的简单使用,供大家参考,具体内容如下 1、效果图 2、该控件(UITableView) 代码注意的地方: A、ViewController 不...
    99+
    2024-04-02
  • ​CSS如何实现表格列宽自适用
    这篇文章主要为大家展示了“CSS如何实现表格列宽自适用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“CSS如何实现表格列宽自适用”这篇文章吧。CSS:表格列宽自...
    99+
    2024-04-02
  • css如何实现表格单元格等宽
    这篇文章将为大家详细讲解有关css如何实现表格单元格等宽,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。表格单元格等宽表格工作起来很麻烦,所以务必尽量使用 table-layout: fixed 来保持单元...
    99+
    2023-06-05
  • css如何实现等宽表格单元格
    这篇文章给大家分享的是有关css如何实现等宽表格单元格的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。等宽表格单元格表格可能很难处理,所以尝试使用table-layout:fixed来保持单元格相等宽度:.cale...
    99+
    2023-06-27
  • 如何使用HTML和CSS实现网格列表布局
    在现代网页设计中,网格列表布局成为了一个非常常见的布局模式。它可以帮助我们轻松地创建出漂亮的网页,让内容清晰地排列在网页中。本文将介绍如何使用HTML和CSS来实现网格列表布局,并提供具体的代码示例。首先,我们需要使用HTML来构建网页的基...
    99+
    2023-10-21
    CSS html 网格布局
  • Ant Design_Form表单上传文件组件如何实现
    本文小编为大家详细介绍“Ant Design_Form表单上传文件组件如何实现”,内容详细,步骤清晰,细节处理妥当,希望这篇“Ant Design_Form表单上传文件组件如何实现”文章能帮助大家解决疑惑,下面跟着小编的...
    99+
    2023-07-05
  • python如何实现列表组合和列表元素替代组合
    小编给大家分享一下python如何实现列表组合和列表元素替代组合,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!列表组合和列表元素替代组合>>> for ...
    99+
    2024-04-02
  • Vue实现下拉表格组件
    本文实例为大家分享了Vue实现下拉表格组件的具体代码,供大家参考,具体内容如下 <template>   <div>     <div class="s...
    99+
    2024-04-02
  • 利用sortablejs实现拖拽列表组件
    Sortable.js 是一个 JavaScript 库,用于实现可拖放元素的列表。要使用 Sortable.js 实现拖拽列表组件...
    99+
    2023-09-21
    sortablejs
  • element表格组件实现右键菜单的功能
    目录前言实现思路最后前言 最近产品给我提了个需求 ————想要实现用户右键table的某一行时,显示该行操作栏的功能。觉得这个需求挺有...
    99+
    2024-04-02
  • Div和CSS如何使用列表制作表单
    本篇内容介绍了“Div和CSS如何使用列表制作表单”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Div+C...
    99+
    2024-04-02
  • Vue3 table表格组件的使用
    目录一、Ant Design Vue1、官网地址2、怎么使用3、将电子书表格进行展示二、总结一、Ant Design Vue 在大量数据需要展示时,我们一般都会以报表的形式展现,按照...
    99+
    2024-04-02
  • element表格组件怎么使用
    这篇文章主要介绍“element表格组件怎么使用”,在日常操作中,相信很多人在element表格组件怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”element表格组件怎么使用”的疑惑有所帮助!接下来...
    99+
    2023-06-03
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作