Как перезагрузить UItableView, который находится внутри UiViewController - PullRequest
2 голосов
/ 18 сентября 2011

У меня есть UITableView внутри UiViewController. На том же экране у меня также есть две кнопки: Показать все против Показать топ 5.

Теперь, основываясь на выборе всего / 5 лучших, мне нужно обновить данные таблицы.

Я не могу использовать [tableView reloadData], так как я не использую UITableViewController.

Это первый раз, когда я работаю над приложением для iphone. Так что любая помощь приветствуется.

(я использовал этот учебник, чтобы начать http://www.icodeblog.com/2009/05/24/custom-uitableviewcell-using-interface-builder/)

Спасибо.

Вот фрагмент моего кода:

.h file

@interface DataViewController : UIViewController {
    NSString *showType;   
}

@property (nonatomic, retain) NSString *showType;

-(IBAction) showTop: (id) sender;
-(IBAction) showAll: (id) sender;

@end

.m файл

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *cellID = @"customCell";
    DataCustomCell *cell =  (DataCustomCell *) [tableView dequeueReusableCellWithIdentifier:cellID];    

    if([showType isEqualToString:@"all"])
    {
        // use this data..
    }
    else
    {
        // use some other data..
    }    

    // ....
}

-(IBAction) showNearby: (id) sender 
{
    self.showType=@"top";  

    // reload table some way  
}

-(IBAction) showAll: (id) sender
{
    self.showType=@"all";

    //reload table some way
}

1 Ответ

11 голосов
/ 18 сентября 2011

Создайте UITableView IBOutlet как этот

@property (nonatomic, retain) IBOutlet UITableView *myTableView;

в файле интерфейса вашего UIViewController.Затем подключите это к UITableView в Интерфейсном Разработчике.После синтеза в файле реализации вы сможете получить к нему следующий доступ:

[self.myTableView reloadData];

Кроме того, поскольку вы сохранили его, вам придется выпустить myTableView в deallocметод.

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