您好,登錄后才能下訂單哦!
UIRefreshControl用的是這個控件。UITableViewController中有refreshControl這個屬性。
表格的初始化和數(shù)據(jù)設(shè)置與常規(guī)一致。
1:初始化UIRefreshControl控件,并綁定下拉事件
//添加下拉刷新控件
UIRefreshControl *rc=[[UIRefreshControl alloc] init];
rc.attributedTitle = [[NSAttributedString alloc] initWithString:@"下拉刷新"];
//綁定下拉事件
[rc addTarget:self action:@selector(refreshTableView) forControlEvents:UIControlEventValueChanged];
self.refreshControl = rc;
2 :添加下拉事件函數(shù),在下拉事件中請求數(shù)據(jù)和修改控件狀態(tài),綁定回調(diào)函數(shù)
//下拉動作響應(yīng)函數(shù)。
-(void)refreshTableView
{
if(self.refreshControl.refreshing){
self.refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString:@"加載中。。。"];
//添加模擬數(shù)據(jù)
NSDate *now = [[NSDate alloc] init];
//添加回調(diào)函數(shù),模擬請求。需要在請求結(jié)束后關(guān)閉加載中狀態(tài)。
[self performSelector:@selector(callBackMethod:) withObject:now afterDelay:3];
}
}
3:在回調(diào)函數(shù)中修改控件狀態(tài)并更新數(shù)據(jù)和表格視圖。
-(void)callBackMethod:(id)obj
{
//結(jié)束加載的狀態(tài)
[self.refreshControl endRefreshing];
self.refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString:@"下拉刷新"];
//添加數(shù)據(jù),刷新表格
[self.listData addObject:(NSDate *)obj];
[self.tableView reloadData];
}
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。