不开,我需要开url
编程当用户点击cell
,但并不需要顺着接下去Safari browser
。现场需要统计。如何打开URL编程,但在浏览器中迅速
这需要模仿像post request
我做的:
UIApplication.shared.openURL(URL(string: url)!)
但这种开放Safari browser
。
不开,我需要开url
编程当用户点击cell
,但并不需要顺着接下去Safari browser
。现场需要统计。如何打开URL编程,但在浏览器中迅速
这需要模仿像post request
我做的:
UIApplication.shared.openURL(URL(string: url)!)
但这种开放Safari browser
。
如果我没有弄错,要打开的应用程序它自我的URL(不含导航到外部-Safari-浏览器)。那么,如果是这样的话,您应该使用UIWebView:
您可以使用UIWebView类将Web内容嵌入到您的应用中。至 这样做,创建一个UIWebView对象,将其附加到一个窗口,并发送一个 请求加载网页内容。您也可以使用这个类回迁 和网页历史前进,你甚至可以通过编程设置一些网站 内容属性。
WebViewController:
我建议一个UIWebView添加到视图控制器(称为WebViewController)并在需要时呈现的ViewController;视图控制器上的故事板应该是这样的:
不要忘记分配一个Storyboard ID吧。
而视图控制器:
class WebViewController: UIViewController {
@IBOutlet weak private var webVIew: UIWebView!
var urlString: String?
override func viewDidLoad() {
if let unwrappedUrlString = urlString {
let urlRequest = URLRequest(url: URL(string: unwrappedUrlString)!)
webVIew.loadRequest(urlRequest)
}
}
@IBAction private func donePressed(_ sender: Any) {
dismiss(animated: true, completion: nil)
}
}
用法:
考虑您想目前它当用户点击在另一个视图控制器按钮:
class ViewController: UIViewController {
@IBAction private func donePressed(_ sender: Any) {
let stoyrboard = UIStoryboard(name: "Main", bundle: nil)
// withIdentifier: the used storyboard ID:
let webViewController = stoyrboard.instantiateViewController(withIdentifier: "WebViewController") as! WebViewController
webViewController.urlString = "https://www.google.com/"
}
}
或者专门为你的情况(选择一个单元格):
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
// withIdentifier: the used storyboard ID:
let webViewController = stoyrboard.instantiateViewController(withIdentifier: "WebViewController") as! WebViewController
webViewController.urlString = "URL GOES HERE..."
}
希望这有助于。
如果你的问题实际上意味着你有,你需要访问,这样就可以抽取被从它的信息的外部网站上的一些数据,那么你可能并不需要在所有的显示着色的网页。
您可以提取网页中的HTML内容是这样
var text = ""
let url = URL(string: "https://www.bbc.co.uk")
do
{
text = try String(contentsOf: url!, encoding: String.Encoding.utf8)
}
catch
{
print("error \(error.localizedDescription)")
}
if !text.isEmpty
{
parseThisPageSomehow(text)
}
您如何分析文本取决于你需要把它弄出来什么,但是这种做法会给你你需要的数据。
如果使用http
而非https
,你会遇到证据充分的运输安全问题,这将迫使你要么设置为HTTP临时替代,或开始使用HTTPS
您必须使用WebView – iDeveloper
只需使用'URLRequest'来执行此操作。 – zisoft
如果您想分析您的应用,我认为您可以使用Google -Firebase- Analytics,Fabric或为此编写自己的Web服务实现。这对您的应用程序更有效。 –