2011-04-21 34 views

回答

5

你可以走了視圖層次,直到找到一個UITableView:

UIView *v = self; 
    while (v && ![v isKindOfClass:[UITableView class]]) v = v.superview; 
    // v now holds the table view, or nil if there isn't one 

雖然你應該質疑爲什麼完全電池需要在表格視圖捅,以及是否有一個更簡單的方法去做吧。

+0

葉氏,它的工作原理,[個體經營上海華]採取同樣的效果,另外一個問題,我怎樣才能得到基本超級視圖的視圖控制器? – Ron 2011-04-21 14:52:34

+0

@Ron:如果將來的iOS版本將一些其他視圖插入表視圖和單元格之間的層次結構中,那麼只需'[self superview]'可能無法工作。您可以(通常)通過查看「nextResponder」是否返回UIViewController而不是UIView來檢查視圖是否具有控制器,但再次問自己爲什麼要這樣做。 – Anomie 2011-04-21 15:03:04

+0

啊哈,謝謝,這個問題不是關於任何項目或者真正的實現,我只是想知道如何去做。謝謝。 – Ron 2011-04-21 16:29:16

0

對於iOS 8+:

UITableView *tableView = cell.superview.superview; 
相關問題