如何在我的iOS应用程序中添加UIWebView?
我有一个应用程序,当第一个屏幕上的按钮被按下时,一些工作并生成一个URL,然后做
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:currentURL]];
用我的URL启动Safari。 我希望从这里启动webview,以便用户可以使用它做一些自定义的事情。 我仍然有一段时间了解iOS中的MVC并需要帮助。 我的项目是最小的,由AppDelegate.h / m和ViewController.h / m组成,视图控制器的.m是执行此Safari启动的function所在。
任何人都可以帮助我了解如何做我想做的事情吗?
谢谢…
最简单的方法是在按下按钮时添加UIWebView。 将此方法添加到ViewController.m中,并在按下按钮时执行此操作。
编程方式:
//This method should get called when you want to add and load the web view - (void)loadUIWebView { UIWebView *webView = [[UIWebView alloc] initWithFrame:self.view.bounds]; //Change self.view.bounds to a smaller CGRect if you don't want it to take up the whole screen [webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:currentURL]]]; [self.view addSubview:webView]; [webView release]; }
使用Interface Builder:
1)在界面中添加UIWebView对象。
2)将“hidden”属性设置为选中(在Interface Builder的“Attributes Inspector”窗口中)。 你会隐藏它直到你想要显示它。
3)将以下代码添加到ViewController.h中,在其他@property行下面:
@property (nonatomic, retain) IBOutlet UIWebView *webView;
4)在ViewController.m中的@synthesize下面添加以下行
@synthesize webView;
并添加[webView release];
在dealloc方法中。
5)返回IB并单击File的Owner,并将webViewsockets连接到您创建的webView。
6)添加以下方法而不是上面显示的方法(对于编程示例):
//This method should get called when you want to add and load the web view - (void)loadUIWebView { [self.webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:currentURL]]]; self.webView.hidden = NO; }
您可以设置一个IBAction方法来响应按下按钮,但听起来您已按下按钮按下工作,所以我现在不打算这样做。
至于在Web视图上方添加一个按钮,您既可以将Web视图子类化,也可以在那里添加按钮,或者只是在您的笔尖中以编程方式定义一个单独的按钮,并使其隐藏webView以“摆脱它”。
要使用Swift将UIWebView添加到您的应用程序,只需将WebView拖到故事板上,然后使用助理编辑器将WebView连接到ViewController.swift,然后将URL加载到WebView非常简单。 只需在故事板中创建一个WebView,然后就可以使用以下代码加载URL。
let url = NSURL (string: "https://www.simplifiedios.net"); let request = NSURLRequest(URL: url!); webView.loadRequest(request);
就像只有3行代码一样简单:)
参考: UIWebView示例
由于这是Google的最佳结果,如果您可以使用WKWebView
而不是UIWebView
,那么您应该这样做。
import WebKit let webViewConfiguration = WKWebViewConfiguration() let webView = WKWebView(frame: CGRect(), configuration: webViewConfiguration)