【サンプルコード有】上から下に画面を引っ張って、データを更新する

iPhone

画面上部から画面を下に引っ張ると、データを読み込むといったUIがiPhoneには多いかと思います。
あれを実現するために、iOS6から追加された「UIRefreshControl」を使います。

これが簡単で、UIRefreshControlのインスタンスをつくり、UIScrollViewのプロパティにセットすればOKです。
UIScrollViewなので、UITableViewControllerでもUIWebViewでもできます。

 @interface RefreshTestController ()
 @property(nonatomic) UIRefreshControl *refreshControl;
 -(void)viewDidLoad
 {
    [super viewDidLoad];
    
    //インスタンス生成
    self.refreshControl = [[UIRefreshControl alloc] init];
    
    //引っ張っているときに、表示させる文字
    NSMutableDictionary *attributes = [NSMutableDictionary dictionary];
    NSAttributedString *title = [[NSAttributedString alloc] initWithString:@"下に引っ張って更新" attributes:attributes];
    self.refreshControl.attributedTitle = title;
 
    //色を変更
    self.refreshControl.tintColor = [UIColor orangeColor];
    
    //イベントを関連づけ
    [self.refreshControl addTarget:self action:@selector(onRefresh:) forControlEvents:UIControlEventValueChanged];
    
    //セット
    [self.collectionView addSubview: self.refreshControl];
 }

引っ張ったときに呼び出されるメソッド

 -(void)onRefresh:(id)sender
 {
     //画面上部で、くるくる回ります。
     [self.refreshControl beginRefreshing];
     
     //更新メソッド
     
     //くるくるが停止します。
     [self.refreshControl endRefreshing];
 }

これを使って、プレゼントをキュレーションするアプリを開発しました。
インストールして、動作確認をしてみてください。
True Gift

コメントを残す

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