我熟悉将导航按钮添加到单个Web视图中,但是在这种情况下,我试图使用相同的按钮将导航按钮添加到多个Web视图中。 Web视图位于滚动视图内部,用户可以向左或向右滑动来访问它们。我不知道如何检查用户所在的Webview的状态并相应地对按钮进行编码。
func loadWebsites() -> [Website] {
let url1 = URL(string: "\(nikeWebsite)")
let request1 = URLRequest(url: url1!)
let url2 = URL(string: "\(finishlineWebsite)")
let request2 = URLRequest(url: url2!)
let url3 = URL(string: "\(eastbayWebsite)")
let request3 = URLRequest(url: url3!)
let url4 = URL(string: "\(footlockerWebsite)")
let request4 = URLRequest(url: url4!)
let url5 = URL(string: "\(footactionWebsite)")
let request5 = URLRequest(url: url5!)
let url6 = URL(string: "\(champsWebsite)")
let request6 = URLRequest(url: url6!)
let website1:Website = Bundle.main.loadNibNamed("Website", owner: self, options: nil)?.first as! Website
website1.webView.load(request1)
website1.webView.navigationDelegate = self
let website2:Website = Bundle.main.loadNibNamed("Website", owner: self, options: nil)?.first as! Website
website2.webView.load(request2)
website2.webView.navigationDelegate = self
let website3:Website = Bundle.main.loadNibNamed("Website", owner: self, options: nil)?.first as! Website
website3.webView.load(request3)
website3.webView.navigationDelegate = self
let website4:Website = Bundle.main.loadNibNamed("Website", owner: self, options: nil)?.first as! Website
website4.webView.load(request4)
website4.webView.navigationDelegate = self
let website5:Website = Bundle.main.loadNibNamed("Website", owner: self, options: nil)?.first as! Website
website5.webView.load(request5)
website5.webView.navigationDelegate = self
let website6:Website = Bundle.main.loadNibNamed("Website", owner: self, options: nil)?.first as! Website
website6.webView.load(request6)
website6.webView.navigationDelegate = self
return [website1, website2, website3, website4, website5, website6]
}
func setupWebsiteScrollView(websites : [Website]) {
scrollView.frame = CGRect(x: 0, y: 0, width: view.frame.width, height: view.frame.height)
scrollView.contentSize = CGSize(width: view.frame.width * CGFloat(websites.count), height: view.frame.height)
scrollView.isPagingEnabled = true
scrollView.contentInsetAdjustmentBehavior = .never
for i in 0 ..< websites.count {
websites[i].frame = CGRect(x: view.frame.width * CGFloat(i), y: 0, width: view.frame.width, height: view.frame.height)
scrollView.addSubview(websites[i])
}
}
@IBAction func backButtonTapped(_ sender: Any) {
//go backward on webview that is currently being displayed to user
}
@IBAction func forwardButtonTapped(_ sender: Any) {
//go forward on webview that is currently being displayed to user
}
@IBAction func refreshButtonTapped(_ sender: Any) {
//refresh webview that is currently being displayed to user
}