-1

NSURL パスから NSXMLParser へのデータで NSTimer を使用して TableView に表示する方法

PHP gen'からXMLへのWebサーバーからのアプリケーション表示データがあります

私のxcodeでは、NSURLを使用してPHPファイル(Webサーバー内)に接続し、NSXMLParserを使用してXMLデータを読み取り、値を配列に入れ、TableViewに最終的に表示します

TableView ライブ更新でデータを表示したい、または x 回ごとに更新したい

NSTimer を使用できると思いますが、xcode のコードに NSTimer を配置する方法がわかりません

4

1 に答える 1

0

要するに、次のようなものです:

// Schedule a timer repeating every 2 seconds
[NSTimer scheduledTimerWithTimeInterval:2.0
                                 target:self.tableView
                               selector:@selector(reloadData)
                               userInfo:nil
                                repeats:YES];

より長いバージョン:

タイマーから -doParse を呼び出し、データをフェッチし、解析を行い、データをリロードする必要があります。

メイン スレッドをブロックしないためには、メイン スレッドから呼び出してはなりません[[NSXMLParser alloc] initWithContentsOfURL:theURL]

その代わり:

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_LOW, 0), ^{
      NSXMLParser *nsXmlParser = [[NSXMLParser alloc] initWithContentsOfURL:theURL];
      ...
      // finish parsing
      dispatch_async(dispatch_get_main_queue(), ^{
          [tableView reloadData];
      });
});

-doParse-viewDidLoad から NSTimer を呼び出します。

[NSTimer scheduledTimerWithTimeInterval:2.0
                                 target:self
                               selector:@selector(doParse)
                               userInfo:nil
                                repeats:YES];

詳細情報: WWDC 2012 セッション 211 - iOS での同時ユーザー インターフェイスの構築。

于 2012-08-27T09:54:35.757 に答える