喂! 如何在此代码中加载保存到项目中的本地html文件而不是网页:
- (void)loadAboutHTML {
UIWebView *aboutHTML = [[UIWebView alloc] init];
NSURL *webURL = [NSURL URLWithString:@"http://apple.com"];
NSURLRequest *webURLRequest = [NSURLRequest requestWithURL:webURL];
[aboutHTML loadRequest:webURLRequest];
[aboutHTML setScalesPageToFit:YES];
[aboutHTML setFrame:CGRectMake(0, 0, 320, 416)];
[self addSubview:aboutHTML];}
答案 0 :(得分:13)
UIWebView *web = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];
[web loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle]
pathForResource:@"help" ofType:@"html"]isDirectory:NO]]];
web.backgroundColor = [UIColor clearColor];
这就是我用过的东西
答案 1 :(得分:5)
选项1
使用此
- (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL
将项目中文件的内容读入NSString
。然后使用上面的方法加载html内容
使用
+ (id)stringWithContentsOfFile:(NSString *)path encoding:(NSStringEncoding)enc error:(NSError **)error
从文件中获取字符串然后使用
[webView loadHTMLString:urHTMLString baseURL:baseURL];
选项2
NSURLRequest *urlReq = [NSURLRequest requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"fileName" ofType:@"html"]]];
[webView loadRequest:urlReq];
<强>更新强>
- (void)loadAboutHTML {
UIWebView *aboutHTML = [[UIWebView alloc] init];
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"yourFileName" ofType:@"html"]]];
[aboutHTML loadRequest:urlRequest;
[self addSubview:aboutHTML];
}
答案 2 :(得分:2)
本地网站HTML
[webView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"file_name_html" ofType:@"html"] isDirectory:NO]]];
http web
[webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://google.com"]]];
答案 3 :(得分:2)
may be the answer of the solution
CGRect applicationFrame = [[UIScreen mainScreen] applicationFrame];
applicationFrame.origin.y = 0;
webView = [[UIWebView alloc] initWithFrame:applicationFrame];
webView.autoresizingMask = (UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight);
NSString *basePath = [[NSBundle mainBundle] bundlePath];
NSURL *baseURL = [NSURL fileURLWithPath:basePath];
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"];
NSString *htmlString = [NSString stringWithContentsOfFile:filePath];
if (htmlString) {
[webView loadHTMLString:htmlString baseURL:baseURL];
}
[self.view addSubview:webView];
答案 4 :(得分:0)
UIWebView *agreementView = [[UIWebView alloc] initWithFrame:CGRectMake(10, newY, 494, 300)];
agreementView.delegate = self;
agreementView.dataDetectorTypes = UIDataDetectorTypeNone;
[agreementView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"yourfilename" ofType:@"html"]]]];
loadingIndicator=[[UIActivityIndicatorView alloc]initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
loadingIndicator.frame=CGRectMake(237, 140, 20, 20);
loadingIndicator.transform = CGAffineTransformMakeScale(1.55, 1.55);
[agreementView addSubview:loadingIndicator];
- (void)webViewDidStartLoad:(UIWebView *)webView
{
loadingIndicator.hidden=NO;
[loadingIndicator startAnimating];
}
//delegates
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
loadingIndicator.hidden=YES;
[loadingIndicator stopAnimating];
}
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error
{
[loadingIndicator stopAnimating];
}
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
if(UIWebViewNavigationTypeOther == navigationType)
{
return YES;
}
return NO;
}