소개
게시글
질문&답변
혹시 강의하실때 사용하셨던 Xcode 버전을 알 수 있을까요?
어떻게 고쳐야 Run했을때 정상적으로 작동 될까요...?
- 0
- 4
- 328
질문&답변
혹시 강의하실때 사용하셨던 Xcode 버전을 알 수 있을까요?
몇가지는 fix 눌러서 고쳐서 조금 수정되었을거에요. 지금 에러가 8개 납니다 ㅠㅠ
- 0
- 4
- 328
질문&답변
혹시 강의하실때 사용하셨던 Xcode 버전을 알 수 있을까요?
앱딜리게이트 // // AppDelegate.swift // MyWebBrowser // // Created by 박단비 on 15/05/2019. // Copyright © 2019 박단비. All rights reserved. // import UIKit /// 마지막 페이지 주소를 UserDefaults에서 관리하기 위한 키 값 let lastPageURLDefaultKey: String = "lastURL" @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { // MARK: - Properties var window: UIWindow? var lastPageURL: URL? // MARK: - Methods func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { // Override point for customization after application launch. self.lastPageURL = UserDefaults.standard.url(forKey: lastPageURLDefaultKey) return true } func applicationWillResignActive(_ application: UIApplication) { let userDefaults: UserDefaults userDefaults = UserDefaults.standard UserDefaults.set(self.lastPageURL, forKey: lastPageURLDefaultKey) userDefaults.synchronize() } func applicationDidEnterBackground(_ application: UIApplication) { } func applicationWillEnterForeground(_ application: UIApplication) { // Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background. } func applicationDidBecomeActive(_ application: UIApplication) { // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. } func applicationWillTerminate(_ application: UIApplication) { // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. } }
- 0
- 4
- 328
질문&답변
혹시 강의하실때 사용하셨던 Xcode 버전을 알 수 있을까요?
뷰 컨트롤러 // // ViewController.swift // MyWebBrowser // // Created by 박단비 on 15/05/2019. // Copyright © 2019 박단비. All rights reserved. // import UIKit import WebKit class ViewController: UIViewController { //MARK: - Properties //MARK: IBOutlets @IBOutlet var webView: WKWebView! @IBOutlet var activityIndicator: UIActivityIndicatorView! //MARK: - Methods //MARK: Life Cycle override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. self.webView.navigationDelegate = self as? WKNavigationDelegate } override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) let firstPageURL: URL? if let lastURL: URL = UserDefaults.standard.url(forKey: lastPageURLDefaultKey) { firstPageURL = lastURL } else { firstPageURL = URL(string: "https://www.google.com") } guard let pageURL: URL = firstPageURL else { return } let urlRequest: URLRequest = URLRequest(url: pageURL) self.webView.load(urlRequest) } // MARK: IBActions @IBAction func goBack(_ sender: UIBarButtonItem) { self.webView.goBack() } @IBAction func goForward(_ sender: UIBarButtonItem) { self.webView.goForward() } @IBAction func refresh(_ sender: UIBarButtonItem) { self.webView.reload() //MARK: Custom Methods func showNetworkingIndicators() { self.activityIndicator.isHidden = false self.activityIndicator.startAnimating() UIApplication.shared.isNetworkActivityIndicatorVisible = true func hideNetworkingIndicators() { self.activityIndicator.isHidden = true self.activityIndicator.stopAnimating() UIApplication.shared.isNetworkActivityIndicatorVisible = false } } extension ViewController: WKNavigationDelegate { // MARK : WKNavigationDelegate func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) { print("did finish navigation") if let appDelegate: AppDelegate = UIApplication.shared.delegate as? AppDelegate { AppDelegate.lastPageURL = webView.url } webView.evaluateJavaScript("document.title") { (value: Any?, error: Error?) in if let error: Error = error { print(error.localizedDescription) return } guard let title: String = value as? String else { return } self.navigationItem.title = title } self.hideNetworkingIndicators() } func webView(_ webView, didFail navigation: WKNavigation!, withError error: Error) { print("did fail navigation") print("\(error.localizedDescription)") self.hideNetworkingIndicators() let message: String = "오류발생!\n" + error.localizedDescription let alert: UIAlertController alert = UIAlertController(title: "알림", message, preferredStyle: UIAlertController.alert) let okayaction: UIAlertAction okayaction = UIAlertAction(title: "확인", style: UIAlertAction.Style.cancel, handler: nil) alert.addAction(okayaction) self.present(alert, animated: true, completion: nil) } func webView(_ webView: WKWebView, didStartProvisionalNavigation navigation: WKNavigation!) { print("did start navigation") self.showNetworkingIndicators() } } } }
- 0
- 4
- 328