-2

Web サービスを使用してコンテンツを表示するには、UITableView を使用しています。毎分 1 回データをリロードする必要があります。これを行うのを手伝ってくれる人はいますか...

4

7 に答える 7

4

2つの質問があります:

UITableView1)セルをリロードする方法は?

2)60秒ごとに自動的に行う方法は?

私の答え:

1)データを手動でリロードするには、UITableViewインスタンスにポインタが必要です。テーブルをこのプロパティに接続@propertyして使用することで、これを行うことができます。IBOutlet名前を付けたと仮定しますtableView[tableView reloadData];次に、呼び出すだけで、テーブルのすべてのセルとセクションを再読み込みできます。

2)最も簡単な方法は、NSTimer60秒ごとに起動し、特定のメソッドを呼び出すものを作成することです。例えば:

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

PSまた、テーブルビューの特定のセルまたはセクションをリロードすることもできます。AppleDocsで検索してください

于 2012-04-23T06:09:47.400 に答える
1

View ControllerのViewdidLoadメソッドで1分のNSTimerを設定する必要があります

- (void)viewDidLoad
{
NSTimer *myTimer = [NSTimer scheduledTimerWithTimeInterval:60.0 target:self selector:@selector(reloadTable) userInfo:nil repeats:YES];
}

// テーブルメソッドをリロード

-

(void)reloadTable{
 [self.tableView reloadData];
[myTimer invalidate];

}
于 2012-04-23T06:23:25.960 に答える
1

Web サービスからデータをロードして を呼び出すコードを含むメソッドを記述します[tableView reloadData]。次に、タイマーを作成し、毎分メソッドを呼び出すようにします。

于 2012-04-23T06:06:30.753 に答える
0

試す:

 /*****TIMER*****/
timer = [NSTimer scheduledTimerWithTimeInterval:60.0 target:self selector:@selector(updateTable) userInfo:nil repeats:YES];


/******************************************************************************/
-(void)updateTable{
   [self.tableView reloadData];

}
于 2012-04-23T06:09:50.117 に答える
0

Halleyの回答を使用するか、タイマーでテーブルビュー自体にreloadDataを呼び出すことができます。

NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:60 target:self.tableView selector:@selector(reloadData) userInfo:nil repeats:YES];
于 2012-04-23T06:10:01.860 に答える
0

毎回データモデルを確認する必要があります。一定の間隔で同じデータを使用してテーブル ビューを再読み込みするのは得策ではありません。右 ?

timer = [NSTimer scheduledTimerWithTimeInterval:60.0 target:self selector:@selector(updateData) userInfo:nil repeats:YES];

-(void)updateData {
  //do something with data model
  //and reload table then
  [self.tableView reloadData];
 }
于 2012-04-23T06:21:57.597 に答える