65 votes

Comment conserver le contenu UITableViewoffset après l’appel de -reloadData

<pre><code></code><p><code></code>. <code></code> ce qui est une sorte de hack peut être trop court ou trop long, alors comment puis-je l’implémenter?</p></pre>

121voto

Matt Koala Points 2081

J’avais des problèmes avec cela parce que je gâche avec le dimensionnement des cellules dans ma méthode cellForRowAtIndexPath. J’ai remarqué que les informations de dimensionnement étaient désactivées après avoir fait reloadData, alors j’ai réalisé que je devais les forcer à la mise en page immédiatement avant de définir le décalage du contenu.

47voto

Nik Kov Points 2742
<h2>Swift 5 variante de @Skywalker réponse:<pre><code></code></pre><hr><h3>Une autre solution (récupérée à partir de MessageKit):</h3><p>Cette méthode doit être appelée à la place de <code></code> . Cela peut convenir à des cas spécifiques.</p><pre><code></code></pre></h2>

29voto

saranpol Points 331

Dans mon cas, décochez la hauteur de ligne automatique et estimez le problème automatique résolu

fix reload problem

28voto

Cyril Points 361

Par défaut, reloadData conserve le contentOffset. Toutefois, il peut être mis à jour si vous avez des valeurs estimées inexactesrowHeight.

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