Tag: uiwebview

如何在Swift中的UIWebView加载本地PDF

所以我目前正在尝试显示我在UIWebview中的本地PDF,这是我使用的代码: @IBOutlet weak var webView:UIWebView! override func viewDidLoad() { super.viewDidLoad() var pdfLoc = NSURL(fileURLWithPath:NSBundle.mainBundle().pathForResource("Sample", ofType:"pdf")!) var request = NSURLRequest(URL: pdfLoc); self.webView.loadRequest(request); } 代码将成功构build,但是当我运行应用程序,它将崩溃与错误:线程1:EXC_BAD_INSTRUCTION(代码= EXC-I386_INVOP,子代码= 0x0) 我已经find了一些关于如何做到这一点的教程,但是它们都很过时,或者在Objective-C中。

iOS9不会从安全页面(SSL / HTTPS)加载不安全的资源

我正尝试使用https:// URL将页面加载到iOS9上的UIWebView。 加载的页面包含来自不安全服务器的CSS和图像。 例如加载的页面: https ://www.example.com/ ,其中包含样式表http://www.example.com/style.css和图片http://www.example.com/image.jpg 如果原始页面是通过不安全的连接(普通的http)加载的,一切工作。 一切都可以通过HTTPS和HTTP在iOS8上运行。 我在应用程序PLIST文件中将NSAppTransportSecurity设置为NSAllowsArbitraryLoads : <key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict> 虽然通过HTTPS加载页面时,图像加载好,但CSS文件不是。 看起来像UIWebView阻止从安全页面加载不安全的资源。 是否有任何设置的UIWebView ,将允许通过不安全的连接加载CSS?

如何在目标C中调用JavaScript函数

我是新的程序员目标C.我添加了一些HTML文件到目标C.在这个HTML文件包含简单的JavaScript函数。 我需要通过客观的C代码来调用这个函数。 我通过使用谷歌了很多时间。 但我找不到真正的方法来做到这一点。 贝娄包含html文件: <!DOCTYPE html> <html> <head> <script> function myFunction() { alert("Hello World!"); } </script> </head> <body> <button onclick="myFunction()">Try it</button> </body> </html> 我这样调用这个函数:是正确还是错误? 如果错了,该怎么做。 请帮忙。 NSString *path; NSBundle *thisBundle = [NSBundle mainBundle]; path = [thisBundle pathForResource:@"first" ofType:@"html"]; NSURL *instructionsURL = [NSURL fileURLWithPath:path]; [webView loadRequest:[NSURLRequest requestWithURL:instructionsURL]]; NSString * jsCallBack = [NSString stringWithFormat:@"myFunction()"]; [webView stringByEvaluatingJavaScriptFromString:jsCallBack]; […]

从UIWebView创buildPDF文件

-(void)createPDFfromUIView:(UIView*)aView saveToDocumentsWithFileName:(NSString*)aFilename { // Creates a mutable data object for updating with binary data, like a byte array UIWebView *webView = (UIWebView*)aView; NSString *heightStr = [webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight;"]; int height = [heightStr intValue]; // Get the number of pages needed to print. 9 * 72 = 648 int pages = ceil(height / 648.0); NSMutableData *pdfData = […]

如何拦截button单击iOS内的UIWebview?

我有一个HTML表单,具有某些我在UIWebview中打开的字段。 点击一个特定的button,我想要做一个应用程序的行动。 我现在使用的方法是点击button,我将页面redirect到一个虚拟的URL。 我使用委托方法“shouldStartLoadWithRequest”嗅探URL并停止redirect。 然后我做我的自定义事件(捕获图像和上传),然后继续。 这似乎是一个丑陋的黑客。 无论如何,我可以直接钩入button单击事件而不是页面redirect? 更新似乎没有办法设置委托方法来触发JSbutton单击时调用的函数。 唯一的方法是使用上面提到的URL嗅探方法。 john下面已经详细解释了,所以我会接受他的回答。

如何将此脚本安装到iOS的PhoneGap中

我不知道任何Objective-C,这就是为什么我使用PhoneGap来创build一个iOS应用程序。 PhoneGap for iOS有一个很大的缺陷。 键盘上不断有forms助手(“下一个”,“上一个”和“完成”button)。网上关于如何摆脱这一点的信息很less,关于它的所有Stackoverflow问题都说实际上不可能。 但过了一段时间,我偶然发现了这个教程。 底部的段落告诉你如何做到这一点。 它的工作原理,我下载并testing完成的应用程序。 但是因为我不知道如何在Xcode或Objective-C中做任何事情,所以我不知道代码的两个部分是什么文件,他没有在教程中说。 谁能告诉我在哪里PhoneGap应用程序文件呢? 我会很感激,这一直在窃听我整天。 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil]; 和这个 RichTextEditorViewController *viewController = [[RichTextEditorViewController alloc] initWithNibName:@"RichTextEditorViewController" bundle:nil]; self.viewController = [[UINavigationController alloc] initWithRootViewController:viewController]; 另外这个 – (void)removeBar { // Locate non-UIWindow. UIWindow *keyboardWindow = nil; for (UIWindow *testWindow in [[UIApplication sharedApplication] windows]) { if (![[testWindow class] isEqual:[UIWindow class]]) { […]

iOS 7的UIWebView键盘问题

我不得不删除这个栏作为这里链接,但对于iOS 7这个代码不起作用。

在iPhone应用程序中播放YouTubevideo而不使用UIWebView?

我想从我的iPhone应用程序播放YouTubevideo。 我必须尝试使用​​以下代码在iPhone应用程序中播放YouTubevideo, [self playVideo:@"http://www.youtube.com/watch?v=WL2l_Q1AR_Q" frame:CGRectMake(20, 70, 280, 250)]; – (void)playVideo:(NSString *)urlString frame:(CGRect)frame { NSString *embedHTML = @"\ <html><head>\ <style type=\"text/css\">\ body {\ background-color: transparent;\ color: white;\ }\ </style>\ </head><body style=\"margin:0\">\ <embed id=\"yt\" src=\"%@\" type=\"application/x-shockwave-flash\" \ width=\"%0.0f\" height=\"%0.0f\"></embed>\ </body></html>"; NSString *html = [NSString stringWithFormat:embedHTML, urlString, frame.size.width, frame.size.height]; UIWebView *videoView = [[UIWebView alloc] initWithFrame:frame]; [videoView loadHTMLString:html baseURL:nil]; […]

如何在UIWebView中保存内容以便在下次启动时加载更快?

我知道最近在iphone sdk中引入了一些caching类,并且还有一个来自three20库的TTURLRequest,允许你caching一个请求到一个URL。 但是,因为我通过调用UIWebView的loadRequest来加载UIWebView中的网页,所以这些技术并不适用。 任何想法如何保存一个网页,以便在下一次应用程序启动时,我不必从整个页面再次从Web获取? 页面本身已经有了一些自动更新自身部分的Ajax机制。

iOS UIWebView中的Javascript console.log()

使用UIWebView编写iPhone / iPad应用程序时,控制台不可见。 这个优秀的答案显示了如何捕获错误,但是我也想使用console.log()。