我在Objective C和javascript之间制作了一个混合应用程序。我的应用程序如此工作:
前4点效果很好,但是当我按下网站标题时我确实遇到了麻烦,实际上,UIWebView向我展示了一个页面,其中写有该页面未存储在此服务器上的页面。当我使用Finder导航到我的应用程序的Documents文件夹时,我双击html网站,它会在Safari中显示它。为什么当我用UIWebView加载它时不起作用?我将在这里发布截图以了解我的流程。
代码:我在这里发布了加载html的代码:
viewDidLoad方法,我调用方法加载我的页面
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
self.webView.delegate = self;
//[self loadWebsite:@"http://localhost/root/main/index.html"];
[self loadWebsite:@"http://192.168.2.1/root/main/index.html"];
}
loadWebsite方法
-(void)loadWebsite:(NSString*)site
{
NSURL *url = [NSURL URLWithString:site];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[self.webView setScalesPageToFit:YES];
[self.webView loadRequest:request];
}
答案 0 :(得分:0)
这似乎是关于如何将html文件加载到webview中的问题。您应该在加载uiwebview的地方发布代码。
要使用本地文件加载webview,请使用以下代码:
NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle]
pathForResource:@"htmlfilename" ofType:@"html" inDirectory:@"Documents"]];
[webview loadRequest:[NSURLRequest requestWithURL:url]];
您可以参考这篇文章:Load resources from relative path using local html in uiwebview