我有100個記錄要顯示在表上。但是我只會顯示10條記錄,並且當用戶單擊最後一行(Which will have a button that will say load the next 10 records)
時,該表將對接下來的10條記錄進行排序。將記錄加載到TableView - (更多按鈕)
我已經在最後一個單元上成功顯示了更多按鈕。但我不知道如何一次顯示10條記錄。我的代碼到目前爲止;
viewDidLoad中
self.arrayThatContainsAllHundredRecords= [NSArray arrayWithArray:hundredRecordsArray];
[self performSelector:@selector(addTheTableFooter:) withObject:nil afterDelay:0.5];
addTheTableFooter
UIView* footer = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 30)];
[footer addSubview:moreButton]; // i have also added an event to the button click see below, and i have not shown it here.
self.tableView.tableFooterView =footer;
[self.mainWindow removeFromSuperview];
[self.tableView reloadData];
上面將顯示所有記錄100
後顯示More
按鈕。
moreButtonClickAction
-(void)moreButtonClickAction {
NSLog(@"Suppose to load the next 10 records");
}
numberOfRowsInSection
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [self.arrayThatContainsAllHundredRecords count];
}
我需要一種方法來修改這個代碼,所以我將只顯示10條記錄的時間,並顯示下一個10時用戶單擊more
按鈕。 (現在總的記錄應該是20 - (先前的10點+ 10點的記錄爲點擊more
按鈕)的結果)
注:我會下載所有100條記錄,並在viewDidLoad
方法保存它self.arrayThatContainsAllHundredRecords
。
我相信在執行[self.tableView reloadData];
之前,我必須做一些修改,就像加載10條記錄一樣。
那麼,如果我只有53條記錄。然後用戶將單擊更多按鈕5次,在第6次實例中,該表應該只顯示3條記錄。這怎麼可以在tableview中處理:numberOfRowsInSection:?
等待,所以當第一個10行是可見的,用戶按下按鈕來顯示更多的紀錄後,在這一點上是可見的?前20條記錄,或只記錄11-20條?在我的回答中,我假設前者,而MusiGenesis正在迴應後者。 – yuji 2012-02-07 15:58:10
應該可見第10條記錄+第2條10條記錄。現在應該總共有20條記錄 – sharon 2012-02-07 16:03:35