import UIKit import Foundation import GeneralUtils class VCPageImgs: BasePageViewController { var imgObjs: [ImgObj]! static func openController(_ viewController: UIViewController, imgObjs: [ImgObj]) { let storyboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil) let vcOpen = storyboard.instantiateViewController(withIdentifier: "VCPageImgs") as! VCPageImgs vcOpen.imgObjs = imgObjs viewController.present(vcOpen, animated: true, completion: nil) } override func viewDidLoad() { super.viewDidLoad() setSelectionPage(0) } override func getViewControllerAtIndex(_ index: Int) -> UIViewController { let vc = VCImgItem.getInstance(imgObj: imgObjs[index]) vc.pageIndex = index return vc } override func getCount() -> Int { return imgObjs.count } override var prefersStatusBarHidden: Bool { return true } override open var supportedInterfaceOrientations: UIInterfaceOrientationMask { return UIInterfaceOrientationMask.landscape } } class VCImgItem: UIViewController, BasePageContentViewController { @IBOutlet weak var imv: UIImageView! var pageIndex: Int = 0 var imgObj: ImgObj! static func getInstance(imgObj: ImgObj) -> VCImgItem { let storyboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil) let vcOpen = storyboard.instantiateViewController(withIdentifier: "VCImgItem") as! VCImgItem vcOpen.imgObj = imgObj return vcOpen } override func viewDidLoad() { super.viewDidLoad() setImageUrl(imv: imv, imageUrl: imgObj.url) } @IBAction func btnCloseClick(_ sender: Any) { dismiss(animated: true) } }