Ryusuke Fuda's Tech Blog

Softweare Enginier about Web, iOS, Android.

UIRefreshControl 背景 実装

TableViewControllerがないTableViewにUIRefreshControlを実装

■ .h

@property (nonatomic, weak) UIRefreshControl *refreshControl;

■ .m

- (void)viewDidLoad
{
    [super viewDidLoad];
    
    //UIRefreshControl 初期化
    UIRefreshControl *rc = [[UIRefreshControl alloc] init];

    //引っ張ったときのaction追加   
    [rc addTarget:self action:@selector(handleRefresh:) forControlEvents:UIControlEventValueChanged];

    //tableViewにUIRefreshControl追加
    [tableView_ addSubview:rc];

    //このままだとクルクルの背景がtableviewより前にくるので、後ろへ
    [tableView_ sendSubviewToBack:rc];
    self.refreshControl = rc;

    //クルクルの後ろに背景追加
    UIImageView *rcImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed: @"refresh_bg.jpg"]];
    [self.refreshControl insertSubview:rcImageView atIndex:0];
}

- (void)handleRefresh:(id)sender
{
    処理...
    
    //クルクル終了
    [self.refreshControl endRefreshing];
}

こんな感じで背景付きでクルクル実装できる。