簡體   English   中英

iOS:帶有自定義單元格的Tableview不會滾動

[英]iOS: Tableview with custom cells does not scroll

我正在使用導航欄精心組合的tableviewcontrollers集合來顯示數據層次結構。 數據的最底層顯示在自定義tableviewcell中,其內容在xib中進行了描述,並導致所需的單元格高度大於默認值。 我發布了另一個有關如何以編程方式提取結果像元高度的問題,但沒有可用的答案,因此我現在實現heightForRowAtIndexpath以返回硬編碼值,即xib屬性面板中的高度。 但是,當表格顯示的行數超出了正常顯示尺寸(480h,320w)所能容納的范圍時,最下面的行會被切掉,但是我無法滾動查看其余的行。 我已經進行了廣泛的搜索,但是沒有任何幫助。 我戳了各種屬性(表格視圖大小,scrollingEnabled等),但它們似乎都是預期值(例如,scrollingEnabled為true)。 一篇文章建議除非contentSize大於框架,否則不會發生滾動,因此我查看了這些值,這聽起來很有希望,因為我的框架大小通常為460h x 320w,但是我的contentSize為0 x 0! 進一步搜索(例如,“設置contentSize”或“ contentSize為0”)沒有清除任何內容。 我認為contentSize是從表行計數及其高度免費計算的,那么我怎么能得到0? 即使不通過實現heightForRowAtIndexpath而允許默認行高,其contentSize仍為0。 一些搜索建議關閉自定義表格單元格的autoLayout,但仍保持相同。 那么,可能出什么問題了? 感謝您的任何想法或指導。

更新:對不起,我承認! 我最初是使用普通的USB鼠標在Mac mini上進行開發的,其中在模擬器中的滾動是向左按鈕的向下拖動。 我最近使用魔術鼠標切換到了iMac。 現在,我習慣於在鼠標上拖動手指來滾動代碼,網頁等,以至於我不希望嘗試單擊並按住鼠標左鍵“按鈕”,然后再拖動鼠標。 當我這樣做時,一切都按預期進行。 當mini上的應用程序中的任何類似變量/值等於iMac上的變量/值時,我真的以為事情是沒有希望的,但這只是我被花哨的技術所欺騙。 對不起,分心。

設置tableView的框架和單元格的框架正確,並實施
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
在您的UITableView中給出正確的高度。

如果這樣不起作用,請嘗試將tableView.autoresizingMask設置為UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight ;

這可以幫助您調整tableview的大小

我有一個類似的問題。 當內容超出tableViews框架時,我的tableView將不會滾動。

對我來說,問題是我檢查了“ Use Autolayout”,但在tableView上沒有任何約束。 在tableView上添加垂直和水平空間約束解決了我的問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM