我想用顶部的地址栏和底部栏按钮(如 safari)制作我的 web 视图,我使用 safari 代替 web 视图,但我无法自定义 safari 的大小,实际上我想在底部显示标签栏,我这样做了在另一个视图上添加 safari 浏览器,然后作为子视图添加到我的主视图中,但我的标签栏总是隐藏在浏览器后面,所以我想像这样在我的 web 视图上显示它
谁能帮我?
您需要构建一个复合视图并编写代码以将所有内容(webview、按钮、地址栏、搜索栏)粘合在一起。
编辑:添加最小示例:
FullWebView.h:
#import <UIKit/UIKit.h>
@interface FullWebView : UIView
@end
FullWebView.m:
#import "FullWebView.h"
@interface FullWebView ()
@property (nonatomic, retain) UIWebView* webView;
@end
@implementation FullWebView
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
[self setup];
}
return self;
}
- (id)initWithCoder:(NSCoder *)aDecoder
{
self = [super initWithCoder:aDecoder];
if (self) {
[self setup];
}
return self;
}
- (void) setup
{
UIButton* backButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
backButton.frame = CGRectMake(0, 0, 140, 40);
[self addSubview:backButton];
self.webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 40, self.bounds.size.width, self.bounds.size.height - 40)];
[self addSubview:self.webView];
//Glue code for back button
[backButton addTarget:self action:@selector(backTapped:) forControlEvents:UIControlEventTouchUpInside];
}
- (void) backTapped:(id)sender
{
[self.webView goBack];
}
@end
试试这个代码
[webview goFarward];
[webview goBack];