2012-09-26 47 views
0

我創建了一個UITableVIew,它是一個UIView的子視圖。我有三個問題,它只發生在iOS 4設備上:粘滯的UITableView,不必要的水平條是可見的,我不能滾動到表的底部

1)當視圖在滾動時碰到表的頂部或底部時,表不會反彈。豎條不收縮,它感覺粘性,它非常像Android桌面視圖。我試過啓用反彈屬性,但沒有任何區別。

2)當視圖向下滾動到表格底部時出現水平滾動條。這應該不會出現,因爲表視圖的contentSize已正確設置。當contentSize被設置爲比應該小20個像素時,它最終會消失。

3)我無法滾動到頁腳視圖的底部,只有一半的頁腳視圖可見。

我已經在整個項目中添加了一個UITableView作爲其他視圖的子視圖,並且這從未發生,所以我複製了我創建其他UITableViews的方式,但仍然沒有運氣。

任何建議將不勝感激。

感謝, ANKUR

回答

0

我的工作出了問題。這個問題有點奇怪,雖然我感覺我編碼的方式有點混亂。

我是一個View的子類,父視圖有一個layoutSubview方法,它只計算和設置表視圖子視圖的框架。在子類中,我必須重寫layoutSubview,原因與表視圖框架的值需要不同。這意味着表視圖的框架被佈局了兩次,一次是父類,另一次是子類。看起來iOS 4不喜歡這樣,我應該只爲每個layoutSubview調用的子視圖設置一次幀。

現在我創建了一個layoutTableView方法,該方法從父級layoutSubview中調用,並且我重寫了子類中的layoutTableView。因此表格視圖的框架只設置一次。