加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Swift UITableView相关功能(三)

发布时间:2020-12-14 01:44:29 所属栏目:百科 来源:网络整理
导读:我们上一节主要讲了简单创建一个表格填充一些数据 上一节地址:http://www.jb51.cc/article/p-sybrqxqe-bbq.html 继续使用上节代码(代码下载方式见 第二节 末尾) 这节我们实现两个功能 1,调整每一行的高度 上一节的代码结果我们发现每一行的高度有些显小

我们上一节主要讲了简单创建一个表格填充一些数据

上一节地址:http://www.52php.cn/article/p-sybrqxqe-bbq.html

继续使用上节代码(代码下载方式见第二节末尾)

这节我们实现两个功能

1,调整每一行的高度

上一节的代码结果我们发现每一行的高度有些显小,文字有点挤在一起了。

tableView有一个代理方法专门用来设置行高

首先我们让ViewController实现一个协议

UITableViewDelegate

设置tableView的delegate

        _tableView.delegate=self

实现一个协议方法

    
    func tableView(tableView: UITableView,heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
        return 55
    }

此处时我们会发现行高比之前提高了


如果细心我们还能发现这个方法有一个参数

NSIndexPath

有了他我们还可以设置指定行的高度

比如我们吧首行高度设置为100 其他的继续为55

    func tableView(tableView: UITableView,heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
        
        if indexPath.row==0{
            return 100
        }else{
            return 55
        }
        
    }
效果如下

2.我们经常会见到表格为了看的清楚会隔行设置颜色(比如:奇数行一种颜色,偶数行一种颜色)

我们使用一种方式来设置一下

首先,我们回头看一下方法

    func tableView(tableView: UITableView,cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
他里面我们设置标题,副标题等等之前都先创建一个了cell 我们看到 cell是 UITableViewCell类型的 在看这个UITableViewCell发现他就是一个UIView 的子类,而且cell上有一个专门用来现实内容的视图contentView ,其实,刚才我们设置的标题,副标题等等都在contentView上。此时就可以通过设置contentView的背景色实现我们的需求

看代码

        //设置每一行的背景色
        if indexPath.row%2==0{
            cell?.contentView.backgroundColor=UIColor.whiteColor()
        }else{
            cell?.contentView.backgroundColor=UIColor.blueColor()
        }

效果如下:


本节我们先讲到这里

本节源代码我们会上传到qq群空间,欢迎下载

源码名称:TestTableViewSwift3.zip

苹果开发群2 :492222303 欢迎加入 欢迎讨论问题

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读