第二部分主要是往模板里填充數(shù)據(jù)以及計算dynamic cell的高度??聪逻@部分完成后:

GIF
#1 往模板里填充數(shù)據(jù)
1.新建文件,命名為Feed. 聲明四個變量。

Feed.swift
2.在FeedController.swift里:
--聲明數(shù)組feeds
--在ViewDidLoad()里,添加以下代碼。問題來了,為什么能對常量進行改變?看上面,F(xiàn)eed是一個class,它是引用類型。也就是說,F(xiàn)eed的實例是引用,這個引用是常量不能變,但是能通過這個引用對值進行改變。

FeedController.swift
3.在FeedCell.swift里,添加變量feed;didSet起到觀察者的作用,當feed有變化的時候,name,profileImageName,feedText和feedImageName相應地變化

FeedCell.swift
4.返回到FeedController.swift里,更新數(shù)據(jù)源方法

FeedController.swift
#2 計算dynamic collectionView cell的高度
cell里的內(nèi)容是動態(tài)變化的,如何根據(jù)內(nèi)容,相應地調整cell的高度呢?

FeedController.swift
首先,計算出feedText的高度;
然后,計算knownHeight的高度。記住轉化為CGFloat類型。

constraint
最后,計算cell的高度。把上面兩個加起來,再加16,使得feedText看起來不至于太擠。
第二部分完成。