Personnalisation des contrôles de rafraîchissement dans iOS avec MJRefresh

Configuration avancée de MJRefresh pour UITableView et UICollectionView

Désactivation du masquage automatique du footer

tableView.mj_footer.automaticallyHidden = NO;

Implémentation des en-têtes de rafraîchissement

En-tête standard avec bloc de rappel

tableView.mj_header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{
    [self chargerNouvellesDonnees];
}];

En-tête avec images animées

MJRefreshGifHeader *entete = [MJRefreshGifHeader headerWithRefreshingTarget:self 
                                                           refreshingAction:@selector(rafraichirDonnees)];
[entete setImages:imagesRepos forState:MJRefreshStateIdle];
[entete setImages:imagesTraction forState:MJRefreshStatePulling];
[entete setImages:imagesChargement forState:MJRefreshStateRefreshing];
tableView.mj_header = entete;

Personnalisation des labels

entete.lastUpdatedTimeLabel.hidden = YES;
entete.stateLabel.hidden = YES;

[entete setTitle:@"Tirer pour rafraîchir" forState:MJRefreshStateIdle];
[entete setTitle:@"Relâcher pour actualiser" forState:MJRefreshStatePulling];
[entete setTitle:@"Chargement..." forState:MJRefreshStateRefreshing];

Configuration des footers de rafraîchissement

Footer automatique standard

tableView.mj_footer = [MJRefreshAutoNormalFooter footerWithRefreshingBlock:^{
    [self chargerPlusDeDonnees];
}];

Footer avec animations GIF

MJRefreshAutoGifFooter *pied = [MJRefreshAutoGifFooter footerWithRefreshingTarget:self 
                                                              refreshingAction:@selector(chargerSuite)];
[pied setImages:imagesAnimation forState:MJRefreshStateRefreshing];
tableView.mj_footer = pied;

Personnalisation des états

pied.refreshingTitleHidden = YES;
[pied endRefreshingWithNoMoreData];

[pied setTitle:@"Charger plus" forState:MJRefreshStateIdle];
[pied setTitle:@"Chargement supplémentaire..." forState:MJRefreshStateRefreshing];
[pied setTitle:@"Plus de données" forState:MJRefreshStateNoMoreData];

Implémentation pour UICollectionView

collectionView.mj_header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{
    [self actualiserCollection];
}];

collectionView.mj_footer = [MJRefreshAutoNormalFooter footerWithRefreshingBlock:^{
    [self ajouterElementsCollection];
}];

Utiliastion avec UIWebView

webView.scrollView.mj_header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{
    [webView reload];
}];

Étiquettes: iOS MJRefresh UITableView UICollectionView UIWebView

Publié le 11 septembre à 19h11