// // HelpVC.swift // Sirani // // Created by Anhar Solehudin on 24/03/19. // Copyright © 2019 Anhar Solehudin. All rights reserved. // import UIKit import WebKit class HelpVC: UIViewController { @IBOutlet weak var dropdown1: UIImageView! @IBOutlet weak var lineWv1: UIView! @IBOutlet weak var wv1: WKWebView! // View Lifecycles override var preferredStatusBarStyle: UIStatusBarStyle { return .lightContent } override func viewDidLoad() { super.viewDidLoad() let html1 = """

Direktorat Standardisasi Perangkat Pos dan Informatika
Direktorat Jenderal Sumber Daya dan Perangkat Pos dan Informatika
Kementerian Komunikasi dan Informatika - Republik Indonesia

Loket Pelayanan Terpadu SDPPI
Wisma Antara Lantai 1
Jl. Medan Merdeka Selatan No.17, Gambir, Jakarta Pusat, DKI Jakarta
Phone : 159
Email : kontak@kominfo.go.id

""" wv1.navigationDelegate = self wv1.loadHTMLString(html1, baseURL: nil) } @IBAction func onTitleOneTapped(_ sender: Any) { if self.wv1.isHidden { UIView.animate(withDuration: 0.25, delay: 0, options: .curveEaseOut, animations: { self.lineWv1.isHidden = false self.lineWv1.layoutIfNeeded() self.wv1.isHidden = false self.wv1.layoutIfNeeded() self.dropdown1.rotates(-.pi) }) } else { UIView.animate(withDuration: 0, delay: 0, options: .curveEaseIn, animations: { self.lineWv1.isHidden = true self.lineWv1.layoutIfNeeded() self.wv1.isHidden = true self.wv1.layoutIfNeeded() self.dropdown1.rotates(0.0) }) } } } extension UIView { func rotates(_ toValue: CGFloat, duration: CFTimeInterval = 0.3) { let animation = CABasicAnimation(keyPath: "transform.rotation") animation.toValue = toValue animation.duration = duration animation.isRemovedOnCompletion = false animation.fillMode = CAMediaTimingFillMode.forwards self.layer.add(animation, forKey: nil) } } extension HelpVC: WKNavigationDelegate { func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) { if navigationAction.navigationType == .linkActivated { guard let url = navigationAction.request.url else { decisionHandler(.allow) return } let components = URLComponents(url: url, resolvingAgainstBaseURL: false) if components?.scheme == "http" || components?.scheme == "https" || components?.scheme == "mailto" { if UIApplication.shared.canOpenURL(url) { if #available(iOS 10.0, *) { UIApplication.shared.open(url) } else { UIApplication.shared.openURL(url) } decisionHandler(.cancel) } else { decisionHandler(.allow) } } else { decisionHandler(.allow) } } else { decisionHandler(.allow) } } }