您的当前位置:首页正文

webView添加头尾视图

来源:华拓网

!

项目中要求给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 然后添加尾视图;

第一次分享写的不好请大家见谅,我会继续努力的。