2012-02-17 1 views
0

Je veux "setTitle" de NSStatusBar avec une chaîne de mon XMLparser. Lorsque l'application démarre, elle affiche correctement le titre dans la barre d'état. Cependant, lorsque les données XML sont actualisées, le titre affiche la chaîne mise à jour mais le titre se déplace vers la gauche dans la barre d'état. Je veux que le titre reste au même endroit après l'actualisation XML.Le titre NSStatusBar des données XML se comporte de manière erratique

À quoi est-ce dû?

lors du démarrage de l'application:

enter image description here

après les données XML est rafraîchie:

enter image description here

et voici où j'appelle la NSStatusBar:

- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName { 

    if ([elementName isEqual:@"temp_f"]) { 
     [xmlTempF appendString:@"°F"]; 
     [degreesF setStringValue:xmlTempF]; 

     statusItem = [[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength]; 
     [statusItem setTitle:xmlTempF]; 
     [statusItem setHighlightMode:YES]; 
    } 
} 

Répondre

1

Looks comme c'est parce que vous créez un nouvel article de statusItemWithLength - vous ne devriez pas avoir besoin de re-déclarer statusItem. Essayez de supprimer cette ligne et de simplement changer le titre.

+0

Yap, ça marche. Merci pour l'aide! – wigging

Questions connexes