不開,我需要開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服務實現。這對您的應用程序更有效。 –