Question

Est-il possible de dire à un UITableView de pré-charger toutes les lignes?

Le tableView est censé montrer plusieurs commentaires (jusqu'à 80 commentaires).

Donc, mon CommentCell utilise un Setter pour adapter la cellule à un commentaire spécifique.

-(void)setComment:(Comment *)newComment {
 if (newComment != comment) {
     [comment release];
        comment = [newComment retain]; 
       /*
        * set the cells view variables here
        */
    }
}  

Ce setter spécifique prend un tas de traitement des ressources et le défilement devient un peu laggy.

J'utilise un reuseIdentifier commentaire spécifique au lieu d'un cellIdentifier de statique lorsque vous appelez

dequeueReusableCellWithIdentifier:

afin d'assurer que « NouveauCommentaire » est égal à l'ancien « commentaire ».
Et en fait, cela fait grand travail lors du défilement sur les cellules qui ont déjà été chargées.

Mais lorsque vous faites défiler les commentaires pour la première fois, il accuse un retard encore comme l'enfer.

Ce qui me conduit à ma question:
Est-il possible de dire la tableview précharger toutes les cellules? (Ce dont je doute)
ou
Dois-je mettre en œuvre ma propre cache au lieu de compter sur « dequeueReusableCellWithIdentifier: »?

Était-ce utile?

La solution

Gardez à l'esprit que votre commentaire reuseIdentifier spécifique pourrait être la cause de tout pour aller lentement (ou du moins, il ne contribue pas). La raison pour laquelle nous utilisons reuseIdentifier pour UITableViewCells est parce que si vous essayez d'allouer une nouvelle cellule chaque fois que vous un besoin est pas aussi performant que si vous pouvez réutiliser celui qui a déjà été fait.

Je vous recommande de pré-calcul de vos commentaires afin que vous pouvez simplement définir les propriétés de vos cellules et les cellules après en réutilisant défiler à l'tableview.

Autres conseils

Non, vous devez pré-charger vos données dans votre dataSource. Il suffit de tout ce dont vous avez besoin de mettre dans un tableau et remplir les cellules de la table à partir de ce tableau d'objets pré-chargés.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top