XMLparserからの文字列を使用してNSStatusBarの「setTitle」を実行したいと考えています。アプリケーションが起動すると、ステータスバーにタイトルが正しく表示されます。ただし、XMLデータが更新されると、タイトルには更新された文字列が表示されますが、タイトルはステータスバーの左側に移動します。XMLが更新された後、タイトルを同じ場所に残したい。
これを引き起こしているのは何ですか?
アプリケーションの開始時:
XMLデータが更新された後:
ここで、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];
}
}