Tag: uiwebview

UIWebView加载外部网站时,以编程方式设置初始缩放比例?

我想要做的是为外部网站设置初始缩放比例[以及在某些情况下,内容偏移量,但不那么重要]。 但是,在应用程序最初设置缩放和偏移后,用户应该能够改变它们,而应用程序不应该干扰。 一些相关的信息可以在这里 , 这里和这里 。 但据我所知,没有什么我想要的。 元设置方法看起来很有前途 – 但是如果我不控制将被加载的html内容,我将如何设置它?

如何在渲染完成前阻止UIWebView中的Javascript alert | confirm | promt?

对于已经处理类似问题的问题,有很多问题,但没有一个能够回答我确切的问题。 大部分的答案都涉及到运行一个JS代码片段,并重载alert方法,如: window.alert = function() {}; 我遇到的问题是,加载的网页(我无法控制内容)在整个页面呈现完成之前会打开一个警报。 因此,我不能使用: – (void)webViewDidFinishLoad:(UIWebView *)webView委托方法来运行JS片段。 另外在- (void)webViewDidStartLoad:(UIWebView *)webView运行相同的片段- (void)webViewDidStartLoad:(UIWebView *)webView不会对我有任何好处,因为它在DOM加载之前执行。 类似的问题: 在UIWebView中捕获(并阻止)alert()模态 我可以处理UIWebViewDelegate内部的警报吗? UIWebView:我可以禁用任何网页内的JavaScript alert()吗? 任何指针呢?

通过iOS 9login到FB时,Safari web视图打开

我已经按照本指南更新我的应用程序使用Facebook SDK 4.6的iOS 9 SDK。 当我点击loginbutton,一个Safari浏览器视图控制器得到提交,而它应该redirect到Facebook应用程序(应用程序安装在iPhone上)。 是否需要额外处理? 它在以前的版本(v4.3.0)工作正常。

当WebLink找不到时,UIWebView不会去didFailLoadWithError?

我使用UIWebView从webLink和UIWebViewDelegate加载web来控制错误状态: [webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:webLink]]]; – (void)webViewDidStartLoad:(UIWebView *)webView{ NSLog(@"START LOAD"); } – (void)webViewDidFinishLoad:(UIWebView *)webView{ NSLog(@"FINISH LOAD"); } – (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error{ NSLog(@"ERROR : %@",error); } 但是,当webLink没有find,它不会去didFailLoadWithError ,它会去startLoad和didFinishLoad 。 webLink未find时如何处理? 请帮忙!

删除UIWebView的内部caching

我在UIWebView显示一个Web应用程序,有时页面的内容会改变。 内容更改后,应用程序清除caching。 但是,当我去我以前访问过的页面UIWebView不发送HTTP GET请求,但从caching加载,即使我已经像这样禁用caching: [[NSURLCache sharedURLCache] removeAllCachedResponses]; [[NSURLCache sharedURLCache] setDiskCapacity:0]; [[NSURLCache sharedURLCache] setMemoryCapacity:0]; 最初我正在用cachePolicy cachePolicy:NSURLRequestReturnCacheDataElseLoad加载一个请求cachePolicy:NSURLRequestReturnCacheDataElseLoad 。 [self.webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:myURLString] cachePolicy:NSURLRequestReturnCacheDataElseLoad timeoutInterval:10.0]]; UIWebView有一些内部caching。 已经访问过的页面将从这个内部caching加载,而不是通过NSURLCache ,也没有请求发送。 有没有办法清除UIWebView的内部caching? 我甚至重新创buildUIWebView但caching仍然存在。

将数据传入和传出embedded式UIWebView

我的视图控制器中embedded了一个UIWebView,如下所示: 我有我的networking视图( _graphTotal )的出口,我可以成功地加载test.html的内容在它使用这个: [_graphTotal loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"test" ofType:@"html"]isDirectory:NO]]]; 我现在试图将数据传递给Web视图,并没有任何运气。 我已经添加了<UIWebViewDelegate> ,这就是我想要的: NSString *userName = [_graphTotal stringByEvaluatingJavaScriptFromString:@"testFunction()"]; NSLog(@"Web response: %@",userName); 这里是我的项目中的test.html的内容: <html> <head></head> <body> Testing… <script type="text/javascript"> function testFunction() { alert("made it!"); return "hi!"; } </script> </body> </html> 我可以在我的webView中看到“Testing …”,但是我没有看到警报,也没有看到返回的“hi!” 串。 任何想法我做错了什么?

我怎样才能加载一个本地的HTML文件到UIWebView?

我们如何加载我们自己的HTML文件到UIWebView?

如何使用NSURLProtocol模拟AJAX调用?

我有UIWebview,使外部服务的AJAX调用。 离线时,我需要抓住这些请求,并返回本地json。 我实现了一个NSURLProtocol和我设法赶上AJAX请求,问题是jquery总是返回一个0错误代码: $.ajax({ url: url, dataType: 'json', contentType: "application/json", success: function(jsonData){ alert("success :"); }, error: function (request, status, error) { alert("failure :" + request.status ); } }); 我总是得到一个request.status = 0 为了testing我的协议,我试图嘲笑我的HTML内的图像,它的效果很好。 从google.fr =>的图像的HTML请求工作正常 AJAX调用亚马逊=> JSON 失败 这是我的全面实施: #import "EpubProtocol.h" @implementation EpubProtocol #pragma mark – NSURLProtocol + (BOOL)canInitWithRequest:(NSURLRequest *)request { BOOL awsRequest = [self request:request […]

如何更改UIWebView的默认字体

UIWebView默认使用什么字体? 我希望能够改变这一点。 但我不想在HTMLstring中做,而是我想有这样的东西: [webView setFont:[UIFont fontWithName:@"GothamRounded-Bold" size:14] 有这样的财产或其他方式吗?

获取UIWebView内容的高度

我有一个使用loadHtmlString函数加载数据的uiwebview。事情是我从SQLite数据库加载数据,每当我加载不同的string不同的长度,当然networking视图获得不同的高度。 现在我需要知道每一次的uiwebview的确切的高度,以加载一个imageView下的webView。 我努力了 – (void)webViewDidFinishLoad:(UIWebView *)aWebView { CGRect frame = aWebView.frame; frame.size.height = 1; aWebView.frame = frame; CGSize fittingSize = [aWebView sizeThatFits:CGSizeZero]; frame.size = fittingSize; aWebView.frame = frame; NSLog(@"Size: %f, %f", fittingSize.width, fittingSize.height); } 但我总是得到相同的结果。 我需要知道如何dynamic获取每次加载的Web视图的高度。 谢谢