181 votes

Tirez pour actualiser UITableView sans UITableViewController

J'essaie d'implémenter une fonctionnalité de rafraîchissement dans un UITableView dans un UIViewController. Je ne peux pas utiliser un UITableViewController parce que je veux que UITableView soit une sous-vue plus petite dans le contrôleur de vue, avec d'autres éléments au-dessus. Je suppose que c'est possible, mais est-ce que quelqu'un en a vu une mise en œuvre?

470voto

Berik Points 2450

Pour ajouter un contrôle de rafraîchissement directement à UITableView sans utiliser de UITableViewController , utilisez ce code:

 - (void)viewDidLoad {
    UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
    [refreshControl addTarget:self action:@selector(refresh:) forControlEvents:UIControlEventValueChanged];
    [self.tableView addSubview:refreshControl];
}

- (void)refresh:(UIRefreshControl *)refreshControl {
    [refreshControl endRefreshing];
}
 

Remarque: UIRefreshControl est ajouté dans iOS6

3voto

J'ai implémenté EGORefreshTableHeaderView avec un UIViewController et une vue de table simple, l'astuce étant que, aux endroits où EGO prend un affichage défilement comme paramètre, si vous regardez la vue de la table elle-même hérite de la vue défilement.

Cela ne nécessite que cela et quelques connexions supplémentaires :)

J'espère que cela t'aides.

-6voto

Reimond Hill Points 2

Salut j'ai trouvé une solution facile:

 @property (nonatomic,strong) IBOutlet UITableView *tableView;
 

et j'ai rejoint avec mon UItableView dans le contrôleur de vue et j'ai utilisé

     [self.tableView reloadData];
 

Ça marche parfait pour moi

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X