配列がいっぱいになった後、UITableViewは空になります。しかし、戻るボタンをクリックして、塗りつぶされた状態に戻ると。
ロードした場合
xmlParser = [[XMLParser alloc] loadXMLByURL:@"http://google.com?xml.php?"];
そのときViewDidLoad
は問題ありませんが、パーサーには数秒かかります。
だから私はその行を次のように追加しました:
- (void)viewDidAppear:(BOOL)animated {
if ([[xmlParser branch] count] == 0) {
xmlParser = [[XMLParser alloc] loadXMLByURL:@"http://google.com?xml.php?"];
}
}
その理由は、MapView
最初にロードするときにXMLをパーサーにしたかったからです。
私のmainViewControllerはとの両方を持つように設定されていMapView
ますUITableView
; 両方ともデリゲートとして設定されます。
私のParserXML.m(xmlには独自のNSobjectファイルがあります)ファイルで、テーブルをリロードします
- (void)parserDidEndDocument:(NSXMLParser *)parser {
NSLog(@"all done!");
NSLog(@"stories array has %d items", [_branch count]);
tableViews = [Maplocator alloc];
[tableViews.tableView reloadData];
}
私の注釈は塗りつぶされていますが、塗りつぶされてMapView
いませんUITableView
が、戻ってクリックしてからもう一度マップをクリックすると、塗りつぶされます。(ただし、数秒かかります)