2015-04-04 74 views
0

我想將UITableView插入到UIScrollView中。 爲此,我在UIScrollView內添加了一個ContainerView,並且鏈接到了ContainerViewUITableViewTableView到ScrollView中 - iOS

在故事板中得到的結果是這樣的:

http://i.stack.imgur.com/12hZz.jpg(故事板)

http://i.stack.imgur.com/AGY4L.jpg(故事板)

當我啓動的TableView被正確地加載,但不與預期的結果的仿真器

http://i.stack.imgur.com/ebij9.gif(動畫GIF)

http://i.stack.imgur.com/bEO8B.jpg(錯誤結果)

但不是我想要獲得的是:

http://i.stack.imgur.com/R7Zhb.jpg

這可能嗎? 你能告訴我,如果繼續的方式是正確的? 謝謝!

我沒有足夠的聲望發佈圖片和兩個以上的鏈接。 對不起,我英文很差。

+0

Tableview高度是固定的還是要重新調整tableview高度的大小取決於單元格的數量? – 2015-04-04 10:27:23

+0

如果它的固定比viewWillAppear更好,你可以更新容器視圖的高度等於tableview的高度。 – 2015-04-04 10:42:47

+0

@PradeepSingh:不,我要根據單元格數調整tableview的大小。細胞的數量是從0到5,每個細胞可能有不同的高度。 – Pascal 2015-04-05 10:45:18

回答

0

所以你有什麼關係,但是你需要設置容器視圖的大小爲表視圖的內容大小,一旦它加載了它的數據。您對內容視圖的其他看法則需要響應大小的變化,以免重疊。

如果您知道表格中每一行的高度以及有多少,那麼計算所需的高度並將其設置爲內容視圖的大小是最容易的。如果你不這樣做,或者高度可以根據用戶的選擇或類似的東西改變,那麼你需要做一些更復雜的事情來觀察表視圖的內容大小,並在事情發生變化時更新它們。

+0

我會嘗試你建議我做的事,但我無法弄清楚。我試圖讓事情變得簡單:我只是想調整容器視圖運行時間。我爲容器視圖創建了一個屬性:'@property(weak,nonatomic)IBOutlet UIView * cont;'和'viewWillAppear'我試圖改變高度:'CGRect frame = _cont.frame; frame.size.height = 500; _cont.frame = frame;'但不起作用。我錯在哪裏? – Pascal 2015-04-05 10:53:46

+0

您是否使用自動佈局? – Wain 2015-04-05 12:55:02

+0

是的。我搞砸了這個項目,所以我創建了一個新項目。我爲約束相對於ContainerView的高度創建了一個IBOutlet。現在一切正常。謝謝。 – Pascal 2015-04-07 15:40:44