use*_*798 21 cocoa-touch objective-c uiwebview ios
我已经尝试了一段时间,但我没有做对.
我在支持文件中编写了以下init函数:
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
webview=[[UIWebView alloc]initWithFrame:CGRectMake(0, 0, 1024,768)];
}
return self;
}
Run Code Online (Sandbox Code Playgroud)
并在ViewController.m中跟随
- (void)viewDidLoad
{
[super viewDidLoad];
UIWebView *view = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 1024, 768)];
NSString *url=@"http://www.google.com";
NSURL *nsurl=[NSURL URLWithString:url];
NSURLRequest *nsrequest=[NSURLRequest requestWithURL:nsurl];
[view loadRequest:nsrequest];
}
Run Code Online (Sandbox Code Playgroud)
我也尝试在appDelegate的didFinishLaunchingWithOptions:方法中创建webview ,但它也没有用.
什么是正确的方法?
Ash*_*iya 35
我希望这个解决方案能帮到你.
只需添加这些行 - (void)viewDidLoad
Run Code Online (Sandbox Code Playgroud)UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 1024, 768)]; NSString *urlString = @"https://www.google.com"; NSURL *url = [NSURL URLWithString:urlString]; NSURLRequest *request = [NSURLRequest requestWithURL:url]; webView loadRequest:request]; [self.view addSubview:webView];
这里我使用了静态框架的Web视图,您可以根据您的要求使用.
看起来您忘记添加webview为其父视图的子视图:
-(id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
webview=[[UIWebView alloc]initWithFrame:CGRectMake(0, 0, 1024,768)];
[self addSubview:webview];
}
return self;
}
Run Code Online (Sandbox Code Playgroud)
也不viewDidLoad是创建子视图的正确位置。您应该将其公开webview为视图的属性,然后从 访问它viewDidLoad,如下所示:
NSString *url=@"http://www.google.com";
NSURL *nsurl=[NSURL URLWithString:url];
NSURLRequest *nsrequest=[NSURLRequest requestWithURL:nsurl];
[[self.view webview] loadRequest:nsrequest];
Run Code Online (Sandbox Code Playgroud)