iOS UIWebView 的下拉刷新和上拉加载的实现
来源:互联网 发布:忻州广电网络电视台 编辑:程序博客网 时间:2024/06/07 05:27
iOS UIWebView 的下拉刷新和上拉加载的实现
UIWebView也是可以添加下拉刷新和上拉加载的,只是不能直接添加在UIWebView的头部和尾部,而是在UIWebView内部有一个属性叫scrollView 属性。我门要把下拉刷新和上拉加载添加到webView.scrollView 的头部和尾部。
下面我简单的说一说iOS UIWebView 的下拉刷新和上拉加载的实现。
首先导入第三方库:
MJRefresh
添加头文件:
#import "MJRefresh.h"
添加代理:
@interface ViewController ()<UIWebViewDelegate>
声明全局变量:
@property (nonatomic, strong) UIWebView *webView;//网页
懒加载创建webView:
- (UIWebView *)webView{
if (!_webView) {
UIWebView *webView = [[UIWebView alloc] initWithFrame: CGRectMake(0, 64, self.view.frame.size.width, self.view.frame.size.height-64)];
webView.backgroundColor = [UIColor whiteColor];
webView.delegate = self;
//如果你导入的MJRefresh库不是最新的库,就用下面的方法创建下拉刷新和上拉加载事件
webView.scrollView.header = [MJRefreshNormalHeaderheaderWithRefreshingTarget:self refreshingAction:@selector(headerRefresh)];
webView.scrollView.footer = [MJRefreshAutoNormalFooterfooterWithRefreshingTarget:self refreshingAction:@selector(footerRefresh)];
//如果你导入的MJRefresh库是最新的库,就用下面的方法创建下拉刷新和上拉加载事件
webView.scrollView.mj_header = [MJRefreshNormalHeaderheaderWithRefreshingTarget:self refreshingAction:@selector(headerRefresh)];
webView.scrollView.mj_footer = [MJRefreshAutoNormalFooterfooterWithRefreshingTarget:self refreshingAction:@selector(footerRefresh)];
[self.view addSubview:webView];
self.webView = webView;
}
return _webView;
}
#pragma mark - 下拉刷新
- (void)headerRefresh{
[self loadData];
}
#pragma mark - 上拉加载
- (void)footerRefresh{
[self loadData];
}
#pragma mark - 结束下拉刷新和上拉加载
- (void)endRefresh{
//当请求数据成功或失败后,如果你导入的MJRefresh库不是最新的库,就用下面的方法结束下拉刷新和上拉加载事件
[self.webView.scrollView.header endRefreshing];
[self.webView.scrollView.footer endRefreshing];
//当请求数据成功或失败后,如果你导入的MJRefresh库是最新的库,就用下面的方法结束下拉刷新和上拉加载事件
[self.webView.scrollView.mj_header endRefreshing];
[self.webView.scrollView.mj_footer endRefreshing];
}
#pragma mark - 加载网页
- (void)loadData{
NSString *urlString =@"http://blog.csdn.net/wwc455634698/article/details/53005676";
NSURL *url = [NSURL URLWithString:urlString];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[self.webView loadRequest:request];
}
#pragma mark - UIWebViewDelegate
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationTyp{
return YES;
}
- (void)webViewDidStartLoad:(UIWebView *)webView{
[UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
}
- (void)webViewDidFinishLoad:(UIWebView *)webView{
[UIApplication sharedApplication].networkActivityIndicatorVisible = NO;
[self endRefresh];
}
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error{
[UIApplication sharedApplication].networkActivityIndicatorVisible = NO;
[self endRefresh];
}
到这里,你就实现了UIWebView 的下拉刷新和上拉加载
- iOS UIWebView 的下拉刷新和上拉加载的实现
- iOS UIWebView 的下拉刷新和上拉加载的实现
- iOS UIWebView 的下拉刷新和上拉加载的实现
- iOS UIWebView 的下拉刷新和上拉加载的实现
- iOS----下拉刷新和上拉加载的原理
- 上拉刷新下拉加载的实现
- 实现TableView的上拉加载和下拉刷新
- 实现TableView的上拉加载和下拉刷新
- tableview的下拉刷新和上拉加载功能实现
- ListView下拉刷新和上拉加载更多的实现
- 实现ListView的下拉刷新和上拉加载
- Android 实现RecyclerView的下拉刷新和上拉加载
- 实现ListView的上拉刷新和下拉加载
- iOS UITableView 的下拉刷新和上拉加载的实现
- iOS UIScrollView 的下拉刷新和上拉加载的实现
- iOS实现scrollView下拉刷新和上拉加载
- iOS 上拉加载和下拉刷新
- listView 模仿ios的上拉刷新下拉加载更多
- java-并发-线程安全
- tinker搭建环境
- Python字典
- python练习 将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种提示效果。 类似于图中效果
- linux下本机与远程主机之间复制文件
- iOS UIWebView 的下拉刷新和上拉加载的实现
- Start Point
- 15个顶级Java多线程面试题及答案
- 在eclipse中导入其他项目可能会出现import javax.servlet.http.*;报错,解决方案如下:
- Say hello to the universe!
- Codeforces Round #441 div2 A. Trip For Meal
- 插画风漫画来袭 天才美术少女的清甜恋爱!
- Spring Data ElasticSearch环境搭建
- 完美字符串