Добавить строку динамически в TableView iphone - PullRequest
6 голосов
/ 26 октября 2009

Мне нужно добавить новую строку в табличное представление, когда я выбираю строку в таблице.

Предполагаю ли я использовать следующий метод ???

- (void)insertRowsAtIndexPaths:(NSArray *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation

Что я должен написать в методе, чтобы добавить новую строку .?

Пожалуйста, помогите мне,

Заранее спасибо Shibin.

Ответы [ 4 ]

13 голосов
/ 05 февраля 2010

Когда я добавляю строку динамически, я использую insertRowsAtIndexPaths: вот пример функции

- (void) allServersFound {
    // called from delegate when bonjourservices has listings of machines:
    bonjourMachines = [bonjourService foundServers]; // NSArray of machine names;

    NSMutableArray *tempArray = [[NSMutableArray alloc] init];

    int i = 0;
    for (NSArray *count in bonjourMachines) {
        [tempArray addObject:[NSIndexPath indexPathForRow:i++ inSection:0]];
    }

    [[self tableView] beginUpdates];
    [[self tableView] insertRowsAtIndexPaths:(NSArray *)tempArray withRowAnimation:UITableViewRowAnimationNone];
    [[self tableView] endUpdates];

    [tempArray release];
}
2 голосов
/ 26 октября 2009

Если вы заполняете свою таблицу из массива, вы можете просто добавить элемент в свой массив и вызвать [myTable reloadData]

1 голос
/ 21 июня 2010

перезагрузить данные приятно и просто, но, насколько я могу судить, не оживляет ...

0 голосов
/ 08 октября 2012

ReloadData может добавить строку в виде таблицы, но если вы хотите добавить анимацию при добавлении строки, используйте эти строки кода

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
        NSMutableArray *tempArray = [[NSMutableArray alloc] init];
        [tempArray addObject:[NSIndexPath indexPathForRow:indexPath.row+1 inSection:0]];

        [mainArray insertObject:@"new row" atIndex:indexPath.row+1];

        [[self tableView] beginUpdates];
        [[self tableView] insertRowsAtIndexPaths:(NSArray *)tempArray withRowAnimation:UITableViewRowAnimationFade];
        [[self tableView] endUpdates];

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...