iOS表視圖之下拉刷新控件功能的實現(xiàn)方法
下拉刷新是重新刷新表視圖或列表,以便重新加載數(shù)據(jù),這種模式廣泛用于移動平臺,相信大家對于此也是非常熟悉的,那么iOS是如何做到的下拉刷新呢?
在iOS 6之后,UITableViewControl添加了一個refreshControl屬性,該屬性保持了UIRefreshControl的一個對象指針。UIRefreshControl就是表視圖實現(xiàn)下拉刷新提供的類,目前該類只能用于表視圖界面。下面我們就來試試該控件的使用。
編寫代碼之前的操作類似于前面幾篇文章。代碼如下:
#import "ViewController.h" @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.Logs = [[NSMutableArray alloc]init];//初始化數(shù)據(jù) NSDate * date = [[NSDate alloc]init];//初始化日期 [self.Logs addObject:date];//把日期插入數(shù)據(jù)中 UIRefreshControl * rc = [[UIRefreshControl alloc]init];//初始化UIRefreshControl rc.attributedTitle = [[NSAttributedString alloc]initWithString:@"下拉刷新"];//設(shè)置下拉框控件標簽 [rc addTarget:self action:@selector(refreshAction) forControlEvents:UIControlEventValueChanged];//添加下拉刷新事件 self.refreshControl = rc; // Do any additional setup after loading the view, typically from a nib. } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } //下拉刷新事件 -(void)refreshAction { if(self.refreshControl.refreshing) { self.refreshControl.attributedTitle = [[NSAttributedString alloc]initWithString:@"加載中"];//設(shè)置下拉框控件標簽 NSDate * date = [[NSDate alloc]init]; [self.Logs addObject:date];//每次刷新添加當前日期 [self.refreshControl endRefreshing];//結(jié)束刷新 self.refreshControl.attributedTitle = [[NSAttributedString alloc]initWithString:@"下拉刷新"]; [self.tableView reloadData]; } } #pragma mark -(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { return 1; } -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return [self.Logs count]; } -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { UITableViewCell * Cell = [tableView dequeueReusableCellWithIdentifier:@"cell"]; NSDateFormatter * dateFormat =[[NSDateFormatter alloc]init];//NSDate的轉(zhuǎn)換類,可將NSDate轉(zhuǎn)換為其它格式,或者轉(zhuǎn)換為NSDate格式 [dateFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss zzz"];//設(shè)定時間格式 Cell.textLabel.text = [dateFormat stringFromDate:[self.Logs objectAtIndex:indexPath.row]]; Cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; return Cell; } @end
效果:
以上所述是小編給大家介紹的iOS表視圖之下拉刷新控件功能的實現(xiàn)方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
iOS中管理剪切板的UIPasteboard粘貼板類用法詳解
在iOS中,通過UITextField、UITextView和UIWebView剪切或復(fù)制的內(nèi)容都可以通過UIPasteboard類來管理粘貼操作,下面就為大家?guī)韎OS中管理剪切板的UIPasteboard粘貼板類用法詳解:2016-06-06iOS中給自定義tabBar的按鈕添加點擊放大縮小的動畫效果
這篇文章主要介紹了iOS中給自定義tabBar的按鈕添加點擊放大縮小的動畫效果的相關(guān)資料,非常不錯,具有參考解決價值,需要的朋友可以參考下2016-11-11IOS中UIWebView加載Loading的實現(xiàn)方法
最近有朋友問我類似微信語音播放的喇叭動畫和界面圖片加載loading界面是怎樣實現(xiàn)的,是不是就是一個gif圖片呢!我的回答當然是否定了,當然不排除也有人用gif圖片?。?/div> 2015-05-05使用UITextField限制只可輸入中,英文,數(shù)字的方法
在我們?nèi)粘i_發(fā)中經(jīng)常遇到一些情況,要UITextField只能輸入某一種特定的字符.比如大寫A-Z或者小寫a-z,或者漢字.或者數(shù)字.那么該如何實現(xiàn)呢,下面通過這篇文章來看看吧。2016-09-09最新評論