美文网首页iOS开发关注iOS进阶指南
纯代码实现Facebook News Feed(2)

纯代码实现Facebook News Feed(2)

作者: Magenta_she | 来源:发表于2016-09-05 21:35 被阅读64次

    第二部分主要是往模板里填充数据以及计算dynamic cell的高度。看下这部分完成后:

    GIF

    #1 往模板里填充数据

    1.新建文件,命名为Feed. 声明四个变量。

    Feed.swift

    2.在FeedController.swift里:

    --声明数组feeds

    --在ViewDidLoad()里,添加以下代码。问题来了,为什么能对常量进行改变?看上面,Feed是一个class,它是引用类型。也就是说,Feed的实例是引用,这个引用是常量不能变,但是能通过这个引用对值进行改变。

    FeedController.swift

    3.在FeedCell.swift里,添加变量feed;didSet起到观察者的作用,当feed有变化的时候,name,profileImageName,feedText和feedImageName相应地变化

    FeedCell.swift

    4.返回到FeedController.swift里,更新数据源方法

    FeedController.swift

    #2 计算dynamic collectionView cell的高度

    cell里的内容是动态变化的,如何根据内容,相应地调整cell的高度呢?

    FeedController.swift

    首先,计算出feedText的高度;

    然后,计算knownHeight的高度。记住转化为CGFloat类型。

    constraint

    最后,计算cell的高度。把上面两个加起来,再加16,使得feedText看起来不至于太挤。

    第二部分完成。

    项目地址:github.com/Paganarchitect/facebook_newsFeed.git

    相关文章

      网友评论

        本文标题:纯代码实现Facebook News Feed(2)

        本文链接:https://www.haomeiwen.com/subject/cddpsttx.html