!
项目中要求给webView 添加头尾视图 ,一开始的思路是给在 webView的scrollView 上添加,但是头视图是没有问题的,添加尾视图的时候总会有一些问题,至今没有没有找到为什么出现这种问题,后来我就换个思路,不多说上代码:
1.首先创建一个ScrollView
-(UIScrollView*)backScrollView{
if (!_backScrollView) {
_backScrollView= [[UIScrollViewalloc]init];
_backScrollView.frame =CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT-64);
}
return _backScrollView;
}
在创建一个webView
- (UIWebView*)webView{
if(!_webView) {
_webView = [[UIWebView alloc] initWithFrame:
CGRectMake(0,85,SCREEN_WIDTH,200)];
_webView.delegate=self;
//处理黑边
_webView.opaque=NO;
_webView.backgroundColor = [UIColor whiteColor];
_webView.scrollView.delegate = self;
// 让webView 不能滚动
_webView.scrollView.scrollEnabled = NO;
}
return _webView;
}
- (void)viewDidLoad {
[super viewDidLoad];
//把滚动视图添加到最底层
[self.view addSubview:self.backScrollView];
[self.backScrollView addSubview:self.webView];
[self configTitleView];
[selfgetData];
}
//在滚动视图上添加头
- (void)configTitleView {
self.titleView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, 85)];
[self.backScrollView addSubview:self.titleView];
self.line = [[UILabel alloc]initWithFrame:CGRectMake(10, 84, SCREEN_WIDTH-20, 1)];
self.line.backgroundColor = [UIColor colorWithHexString:@"0ff5f5f5"];
[self.titleView addSubview:self.line];
self.content = [[UILabel alloc]initWithFrame:CGRectMake(10, 10, SCREEN_WIDTH-20, 45)];
self.content.numberOfLines = 0;
[self.titleView addSubview:self.content];
self.time = [[UILabel alloc]initWithFrame:CGRectMake(10, CGRectGetMaxY(self.content.frame), 100, 25)];
self.time.font = [UIFont systemFontOfSize:13];
[self.titleView addSubview:self.time];
self.source = [[UILabel alloc]initWithFrame:CGRectMake(CGRectGetMaxX(self.time.frame), CGRectGetMaxY(self.content.frame), 100, 25)];
self.source.font = [UIFont systemFontOfSize:13];
self.source.textColor = [UIColor colorWithHexString:@"0f3a4a77"];
[self.titleView addSubview:self.source];
}
//在滚动视图上添加尾部视图
- (void)webViewDidFinishLoad:(UIWebView*)webView
{
[webViewsizeToFit];
CGSize contentSize = self.webView.scrollView.contentSize;
[self.webViewsetFrame:CGRectMake(0,85,SCREEN_WIDTH, contentSize.height)];
if(!IsStrEmpty(self.stocks)) {
SJRelatedStockView*relatedView = [[SJRelatedStockViewalloc]initWithFrame:CGRectMake(0, contentSize.height+85,SCREEN_WIDTH,100)];
NSArray *array = [self.stocks componentsSeparatedByString:@","];
relatedView.array= array;
self.backScrollView.contentSize=CGSizeMake(contentSize.width, contentSize.height+100+85);
[self.backScrollViewaddSubview:relatedView];
}else{
self.backScrollView.contentSize=CGSizeMake(contentSize.width, contentSize.height+85);
}
}
最后总结一下: 就是最底层添加UIScrollView 然后在UIScrollView上添加头视图 webView 然后添加尾视图;
第一次分享写的不好请大家见谅,我会继续努力的。