2010-05-26 7 views
0

Je cherche des conseils sur une plume qui est très lente à charger. C'est grand et complexe, avec beaucoup de sous-vues et de doodads. Quand je tire mon UINavController pour le pousser, il est sensiblement laggy (peut-être près d'une seconde) sur ma 3G. Il se trouve là avec la cellule de la table sélectionnée et rien d'autre ne se passe assez longtemps pour que vous vous demandiez si elle est cassée.La plume complexe est lente à charger

Je m'interroge sur le pré-chargement dans un autre thread alors que l'utilisateur est sur la vue précédente. Je pourrais probablement déclencher le sélecteur en arrière-plan avec un retard dans viewDidAppear de la vue précédente, puis le conserver dans une propriété jusqu'à ce que l'heure du push arrive.

Pensées?

Répondre

4

Pouvez-vous diviser les sous-vues et les doodads en leurs propres plumes, plus petites? Ensuite, vous n'avez pas à tout charger en même temps, juste ce dont vous avez besoin quand vous en avez besoin.

0

Je travaille sur un projet, qui est tellement plein de la même chose, il serait inutilisable sous forme de NIB. J'ai choisi de commencer à créer mes propres sous-vues dans le code, puis dans les domaines de performance, j'ai fait mon propre dessin (comme vous le feriez dans une implémentation complexe/personnalisée de UITableViewCell).

Il n'est pas vraiment difficile de créer tout ou partie de vos éléments dans le code, ou de faire rouler des zones jusqu'à quelque chose qui peut être dessiné à la main.

Juste une idée.

0

Je ferais attention de supposer que c'est le chargement du fichier NIB qui vous ralentit. Exécutez Instruments et/ou Shark contre votre application, en vous concentrant sur l'échantillonnage de ce qui se passe lorsque vous appuyez sur la table pour faire apparaître votre nouvelle vue. Vous pourriez être surpris de savoir où est le goulot d'étranglement. En particulier, il se peut qu'il ne charge pas la NIB elle-même, mais quelque chose dans les méthodes d'initialisation d'une ou de plusieurs sous-vues.

Questions connexes