эй, Может ли кто-нибудь помочь мне в этом, у меня есть около 15 записей в таблице. Я хотел бы, чтобы еще 15 принесли нагрузку больше в последнем UITableViewCell. может кто-нибудь мне помочь?
Делая кнопку "загрузить больше" в uitableviewcell?
Ответ 1
чтобы показать дополнительную строку в представлении таблицы, в
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return dataRows+1;
}
В
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
//after setting tableviewcell
if(indexPath.row==dataRows){
[email protected]"Load More Rows";
}
}
В
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
if(indexPath.row==dataRows){
//there you can write code to get next rows
}
}
Вам нужно обновить переменную numberOfRows в соответствии с отображаемыми строками.
Изменить: После выбора дополнительных записей вы можете добавить их в существующий массив записей, используя следующий метод. Для использования этого метода ваш исходный массив должен быть NSMutableArray
.
[originalEntriesArray addObjectsFromArray:extraEntriesArray];
Ответ 2
Я написал пример проекта, который делает именно это. Загрузите его из GitHub https://github.com/Abizern/PartialTable
Ответ 3
Я написал что-то, что может быть полезно: https://github.com/nmondollot/NMPaginator
Он инкапсулирует разбиение на страницы и работает практически с любым веб-сервисом, используя параметры страницы и per_page. Он также имеет UITableView с автоматической выборкой следующих результатов при прокрутке вниз.
Ответ 4
надеюсь, что это поможет
Я взял массив Mutable и целочисленную переменную и установил общий счетчик массива на целочисленную переменную
arr = [[NSMutableArray alloc]initWithObjects:@"Radix",@"Riki", nil]; dataRows = [arr count];
а затем я устанавливаю количество строк в разделах в соответствии с целочисленной переменной в методе datasource таблицы
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { // Return the number of rows in the section. return dataRows+1; }
потому что вам нужна дополнительная ячейка в конце.
Теперь пришло время установить текст ячейки таблицы
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{ static NSString * CellIdentifier = @ "Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}
// Configure the cell...
//setting the text of the cell as per Mutable array
if (indexPath.row < [arr count]) {
cell.textLabel.text = [arr objectAtIndex:indexPath.row];
}
//setting the text of the extra cell
if (indexPath.row == dataRows) {
cell.textLabel.text = @"more cells";
}
return cell;
}
Теперь, когда вы попадаете в ячейку с ячейками, вам нужны дополнительные ячейки, поэтому просто добавьте свой код внутри
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
значит, вам нужно сделать что-то вроде этого
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { if(indexPath.row == dataRows) { //code for exra cells please } }
Запустите приложение, чтобы проверить этот код.