分类
iOS学习

swift CardView踩过的大坑

如题 做一个swift卡片

1、别问,问就是踩了大坑

呜呜呜 TableView cell 的contentView 默认高度是44 我以为是行高

let cell = tableView.dequeueReusableCell(withIdentifier: "NewsList", for: indexPath)

let cell = NewsListTableViewCell(style: .default, reuseIdentifier: "NewsList")//这个是代码

这两个方法有什么区别吗? 觉得第一个方法不用也罢

2、别问,问就是 CellForRowAtIndexPath不执行,原因如下:

1.没有设置代理或设置的代理有问题。

2.代理方法,返回行数或者组数可能为0

3、去除分割线

Swift中设置tableview的分割线(separator)的样式、颜色、边距

    //设置分割线样式
    // 三种分割线样式:
    // case None  无分割线
    // case SingleLine 单条分割线
    // case SingleLineEtched // This separator style is only supported for grouped style table views currently

    self.tableView.separatorStyle = UITableViewCellSeparatorStyle.SingleLine
    //设置分割线颜色
    self.tableView.separatorColor = UIColor.redColor()
    //设置分割线内边距
    self.tableView.separatorInset = UIEdgeInsetsMake(0, 0, 0, 0)

4、关于执行顺序的问题

provider.request()函数是一个逃逸闭包,在ViewDidLoad()函数最后执行,因此

1、tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell 函数必须分有无数据情况讨论

2、必须在getData()中加入reloadData()

发表评论

电子邮件地址不会被公开。 必填项已用*标注