2012-07-16 108 views
0

我想禁用自動滾動到頂部。我試過禁用自動滾動UITableView

tableview.scrollsToTop=NO; 
    [tableview setScrollsToTop:NO]; 

但這不起作用。

由於

+0

您確定您的tableview屬性在設置屬性時有效嗎?嘗試添加一個「 - (BOOL)scrollViewShouldScrollToTop:(UIScrollView *)scrollView」委託方法並返回NO。 – 2012-07-16 15:36:16

+0

它不起作用 – mhunturk 2012-07-16 15:55:02

+0

所以你知道tableView被設置 - 你添加了一個日誌消息來打印出NSLog(@「%@」,tableView)「,你設置的值,你的tableview設置爲使用你的類作爲一個委託,並且你有委託方法返回NO嗎?添加一個日誌到scrollViewShouldScrollToTop看它是否被調用。ScrollToTop是你點擊狀態欄的地方 - 這是你想禁用的功能,對吧? – 2012-07-16 16:44:51

回答

5

自動滾動代碼駐留在tableViewController,所以自動滾動不能被禁用。而不是從UITableViewController繼承,你可以從UIViewController繼承子類並在其中使用tableView。

如果你願意使用UITableViewController本身,你可以重寫viewWillAppear並且不要調用[super viewWillAppear]。

+0

謝謝!這工作。 – Jeremy 2012-10-17 18:16:56