1

で使用UIRefreshControlしていUITableviewControllerます。テーブルがインターネットからのデータを初めてロードすると、自動的に上部に表示されます。下の画像を参照してください。 ここに画像の説明を入力してください

これが私のリフレッシュコントロールの設定方法です

[self.refreshControl addTarget:self action:@selector(doRefresh:) forControlEvents:UIControlEventValueChanged];
- (void)doRefresh:(CKRefreshControl *)sender {
    NSLog(@"Refreshing Parent");
    // bring Data Here
}

これはすべて、プルトゥリフレッシュの前に発生します。単純なテーブルデータが初めて入力されると、ナビゲーションバーの下に非表示になる代わりに、更新コントロールが表示されます。なぜこれが起こっているのか誰か教えてもらえますか?

4

1 に答える 1

0

新しいUIRefreshControlオブジェクトを割り当てて、self.refreshControlをそれに設定してみてください。そんな感じ:

UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
[refreshControl setAttributedTitle:[[NSAttributedString alloc] initWithString:@"Refreshing.."]];
[refreshControl addTarget:self action:@selector(doSomething:) forControlEvents:UIControlEventValueChanged];
self.refreshControl = refreshControl;

それが役に立てば幸い。

編集:また、呼び出されたセレクターの最後で[self.refreshControlendRefreshing]を使用する必要があります。

于 2013-03-12T12:32:31.497 に答える