2010-09-21 13 views
0

HI,comment puis-je recharger (ou) rafraîchir l'uiview?

Je suis très nouveau pour iphone development.I'm faire une application dans cette application ayant plus d'un uiview.one UIView ayant uislider et uilabel.uislider est utilisé pour afficher les horaires de la chanson et UILabel est utilisé pour montrer le nombre de chansons.pendant que le minuteur montre (-0.00) que le curseur atteint la fin la chanson suivante est correctement jouée mais, l'uilabel ne montre pas le compte de la chanson suivante toujours il montre le (1 0f 5) seulement .. .and un autre uiview nommé comme v_lyrics tandis que la prochaine chanson jouant des paroles vue également ne pas mettre à jour ... Je pense que le seul problème dans cette vue et l'étiquette n'est pas correctement rafraîchissant ...

code: utiliser ce code pour le rafraîchissement de l'étiquette :

[label setNeedsDisplay]; 
[label performSelectorOnMainThread:@selector(setNeedsDisplay) withObject:nil waitUntilDone:YES]; 
Code

pour une vue rafraîchissante:

[v_lyrics setNeedsDisplay]; 

plz tel moi comment puis-je rafraîchir à la fois UILabel et UIView ... Où dois-je donner ce code ...

Merci ... Renya

Répondre

1

Le paramètre setNeedsDisplay dans un interpréteur de commandes appelle la méthode drawRect dans UIView. Je doute de votre explication, c'est là que réside votre problème. Je remarque que vous êtes en train de mener vos opérations, la mise à jour de votre interface utilisateur ne peut se faire que sur le thread principal. Peut-être que c'est là que réside votre problème.

+0

hi ... Dans mon application en boucle fonctionnant correctement mais uiview avoir uiimageview comme une sous-vue qui ne se met pas à jour à la fin de la boucle (-0.00) curseur et audioplayer atteindre la fin de la chanson. chanson suivante mais uiview pas mise à jour .... –

+0

en attente de votre réponse.réponse plz ... –

+0

Im ayant des difficultés à vous lire/comprendre. Avec ce que je pense que vous me dites si vous êtes en boucle sur le thread principal, vous allez bloquer l'interface utilisateur, si vous bouclez un thread enfant, vous ne serez pas en mesure de mettre à jour l'interface utilisateur, vous devez appeler une méthode sur le thread principal pour mettre à jour l'interface utilisateur de votre thread enfant – Rudiger