お使いのブラウザは、バージョンが古すぎます。

このサイトは、Internet Explore8・Internet Explore9には対応しておりません。
恐れ入りますが、お使いのブラウザをバージョンアップしていただきますよう宜しくお願いいたします。

UIRefreshControlを使って更新処理

こんにちは。mashiです。
今回はUITableViewのリスト画面などで下へ引っ張ると上部にインジケーターが表示される「UIRefreshControl」についてです。

IMG_0742_02

サンプルコード

UIRefreshControlを作成します。

- (void)viewDidLoad
{
    UIRefreshControl *rc = [[UIRefreshControl alloc]init];
    [rc addTarget:self action:@selector(onRefresh:) forControlEvents:UIControlEventValueChanged];
    [self.tableView addSubview:rc];
    self.refreshControl = rc;
}

インジケーターが動作中の処理は「refreshControl beginRefreshing」と「refreshControl endRefreshing」の間に追加します。

- (void)onRefresh:(id)sender
{
    // 更新開始
    [self.refreshControl beginRefreshing];

   
  /*更新処理*/
 

    // 更新終了
    [refreshControl endRefreshing];

}

NSTimerで時間を調節して「endRefreshing」のタイミングを変えることもできます。下記は一秒後に「endRefreshing」が実行されるよう設定しています。

   // 更新開始
   [self.refreshControl beginRefreshing];
   
   /*更新処理*/
    
   [NSTimer scheduledTimerWithTimeInterval:1.0f target:self selector:@selector(endRefresh) userInfo:nil repeats:NO];

- (void)endRefresh{
    // 更新終了
    [refreshControl endRefreshing];
}

更新用のボタンなどを別途用意する必要がないので良いですね!お気に入りのUIの一つです。

コメントをどうぞ

メールアドレスは公開されません。* が付いている欄は必須項目です。


お気軽にお問い合わせください。

日本VTR実験室では、お仕事のご依頼、ブログ・コラムのご感想などを受け付けております。
アプリ開発・コンテンツ制作でお困りでしたら、お気軽にご相談ください。
ご連絡お待ちしております。

お問い合わせはこちらから

03-3541-1230

info@nvtrlab.jp

電話受付対応時間:平日AM9:30〜PM6:00