2014-03-19 94 views
-2

當我想滾動UITableView時,它將恢復到其初始狀態。
我錄製了視頻http://www.youtube.com/watch?v=Lp0NmNnv7bE
我不知道我可以修復它的哪部分代碼,所以如果你知道,告訴我,我會寫我的代碼。如何使UITableView可滾動

我的代碼在這裏:http://github.com/serg1991/diplom_newbase/blob/master/diplom/BiletChildViewController.m
我需要解決什麼問題?

+0

你設置了scrollview的內容嗎? – crzyonez777

+0

https://developer.apple.com/library/ios/documentation/windowsviews/conceptual/UIScrollView_pg/CreatingBasicScrollViews/CreatingBasicScrollViews.html – crzyonez777

+0

我在代碼中有這個方法: - (void)observeValueForKeyPath:(NSString *)keyPath ofObject :(id)object change:(NSDictionary *)change context:(void *)context CGRect frame = self.tableView.frame; frame.size = self.tableView.contentSize; self.tableView.frame = frame; } – serg1991

回答

2

UITableView因爲內容大小等於它的框架(或靠近它)而滾動回來。如果您想要在不返回的情況下滾動它,則需要添加更多單元格:表格視圖內容大小將會很大,然後是框架。另一種情況:手動更改表格視圖的內容大小,如果它是真的,那麼通常情況下不應該這樣做。

0

不建議手動更改UITableView的內容大小,內容大小將根據行的總數和每行的高度自動調整。

所以,首先需要從代碼中刪除內容大小設置。

然後,

  1. 確認,沒有任何其他視圖重疊的實現代碼如下。
  2. 確認,您在單元的動態高度更改後調用'reloadData'。
  3. 嘗試減少tableview的高度,看看你是否能夠滾動和定位所有的單元格。
  4. 所有滾動視圖都有默認的反彈屬性,您可以從屬性視圖中將其關閉。
+0

我試圖刪除contentSize設置並減少tableview高度。現在它滾動,但tableview高度小於內容大小:( – serg1991

+0

現在表視圖高度實際上是如何在xib文件中設置 – serg1991

+0

「但tableview高度小於內容大小:(」,是的,這是正確的。如果表視圖高度小於內容大小,那麼只有我們可以滾動。如果兩者都相同滾動的要求是什麼? – Shihab