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