在 iOS 7 ~ iOS 10 , UITableViewCell 與 UITableView 中間多了一層 UITableViewWrapperView ,直到 iOS 11 又移除...
將以下兩段複製到繼承 UITableViewCell 的自定義 class 裡
1 2 3 4 5 6 7 8 | weak var tableView : UITableView ? { // 在 iOS 7 ~ 10 中 ,UITableViewCell 的 superview 為 UITableViewWrapperView 而不是 UITableView if # available ( iOS 11 , *) { return self . superview as ? UITableView } else { return self . superview ?. superview as ? UITableView } } |
1 2 3 | weak var viewController : UIViewController ? { return self . tableView ?. delegate as ? UIViewController } |