먼저 import WebKit 하고 UIViewController에 WebKit View를 만들어주고 Outler연결 시켜줍니다.
func openWebpage(urlStr: String) {
guard let url = URL(string: urlStr) else {
print("Invalid URL")
return
}
let request = URLRequest(url: url)
webView.load(request)
}
urlStr에 사이트 주소를 넣어주면 webView에서 페이지를 열어줍니다.
urlStr에 애플 홈페이지를 넣어 실행시켜보겠습니다.
잘 실행되는것을 볼수있습니다.
ToolBar에서 BarButtonItem을 이용하여 웹페이지를 이동할수있습니다.
뒤로가기, 앞으로가기, 홈페이지, 새로고침등 기능을 버튼을 클릭하여 사용할수있습니다.
@IBAction func goBackButtonClicked(_ sender: UIBarButtonItem) {
if webView.canGoBack {
webView.goBack() //뒤로가기
}
}
@IBAction func goHomeButtonClicked(_ sender: UIBarButtonItem) {
openWebPage(urlStr: destionationURL) //홈페이지
}
@IBAction func reloadButtonClicked(_ sender: UIBarButtonItem) {
webView.reload() //새로고침
}
@IBAction func goForwardButtonClicked(_ sender: UIBarButtonItem) {
if webView.canGoForward {
webView.goForward() //앞으로가기
}
}
SearchBar를 UIViewController에 추가하고 outlet연결을 해줍니다.
Extension
을 통해서 ViewController에 UISearchBarDelegate를 상속시켜주고
func searchBarSearchButtonClicked(_ searchBar: UISearchBar) {
openWebPage(urlStr: searchBar.text!)
}
함수를 이용하여 웹사이트 주소를 입력하고 Search버튼을 누르면 openWebPage함수를 이용하여 실행할수있습니다.