2010-04-17 6 views
1

Im essayant de refaire la vue de table dans le ipod.app. Celui avec 2 étiquettes et la couverture sur la gauche. Je veux la même information là-bas. Je veux dire la couverture plus tous les autres trucs de MPMediaItem. Tout fonctionne bien. Je peux construire la table et obtenir toutes les informations de la bibliothèque musicale dont j'ai besoin. Mon seul problème est que ma table est loin d'être lisse. Ça manque. Lorsque je supprime le MPMediaArtworkItem de la table, il est super rapide. Donc je suppose que c'est un problème avec ça.Lisse vue de table comme sur iPod.app

Existe-t-il un moyen de charger les MPMediaProperties plus rapidement? Quel est le moyen le plus rapide?

THX à l'avance :)

+0

Il existe des charges et des charges de problèmes qui peuvent ralentir une vue de table. Je parie que ce n'est pas la recherche d'image mais votre code d'affichage qui ralentit les choses. Une suggestion pourrait être d'utiliser un dessin personnalisé dans la cellule -> n'utilisez pas plusieurs vues standard dans une cellule, mais combinez-les dans une vue personnalisée avec un dessin personnalisé. – Till

+0

Im en utilisant le code de dessin personnalisé pommes:/(comme atebis fait) –

Répondre

1

Le style de cellule de table avec une image sur la droite et deux étiquettes l'une sur l'autre est un style standard, de sorte qu'une partie aurait probablement dû être mis en œuvre dans un très bon chemin par apple. Je pense que la clé ici est ce que vous dites que si vous supprimez l'image c'est lisse. La façon dont apple obtient de bonnes performances dans ses applications est de pré-générer des vignettes pour toutes les vues dans toutes les tailles dont ils ont besoin. C'est le peu de temps. C'est pourquoi la synchronisation avec iTunes prend un certain temps car elle fait plusieurs copies de chaque pochette d'album etc. Vous pouvez faire la même chose ou vous pouvez vous assurer que vous demandez des illustrations de la même taille que la bibliothèque de l'iPod. Je l'ai fait et c'est très doux. La seule autre façon est que Till dit de faire du dessin personnalisé, mais c'est beaucoup plus de travail.

Si vous voulez une plus grande vignette de l'illustration, vous avez toujours la possibilité de pré-générer les vignettes vous-même et de les stocker/récupérer à l'aide de CoreData. Je l'ai fait de cette façon aussi et ça marche bien. En fait, je voudrais extraire toutes les propriétés que je veux de MPMediaItem et stocker dans CoreData, puis utiliser NSFetchedResultsController pour remplir la table.