我試圖讓使用此教程視圖控制器,而不是XIB文件輕掃導航:https://www.youtube.com/watch?v=3jAlg5BnYUU斯威夫特刷卡導航調整視圖控制器尺寸
我已經成功與視圖控制器來替代廈門國際銀行文件,但是當我運行應用程序的視圖控制器的寬度小於正常:
,因爲它被相同設定爲與XIB文件我不理解。任何人都知道如何解決此問題?
這裏是我的代碼:
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var scrollView: UIScrollView!
override func viewDidLoad() {
super.viewDidLoad()
let vc0 = self.storyboard?.instantiateViewControllerWithIdentifier("ViewController0")
self.addChildViewController(vc0!)
self.scrollView.addSubview(vc0!.view)
vc0!.didMoveToParentViewController(self)
let vc1 = self.storyboard?.instantiateViewControllerWithIdentifier("ViewController1")
var frame1 = vc1!.view.frame
frame1.origin.x = self.view.frame.size.width
vc1!.view.frame = frame1
self.addChildViewController(vc1!)
self.scrollView.addSubview(vc1!.view)
vc1!.didMoveToParentViewController(self)
let vc2 = self.storyboard?.instantiateViewControllerWithIdentifier("ViewController2")
var frame2 = vc2!.view.frame
frame2.origin.x = self.view.frame.size.width * 2
vc2!.view.frame = frame2
self.addChildViewController(vc2!)
self.scrollView.addSubview(vc2!.view)
vc2!.didMoveToParentViewController(self)
let vc3 = self.storyboard?.instantiateViewControllerWithIdentifier("ViewController3")
var frame3 = vc3!.view.frame
frame3.origin.x = self.view.frame.size.width * 3
vc3!.view.frame = frame3
self.addChildViewController(vc3!)
self.scrollView.addSubview(vc3!.view)
vc3!.didMoveToParentViewController(self)
self.scrollView.contentSize = CGSizeMake(self.view.frame.size.width * 4, self.view.frame.size.height - 66)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
您可以嘗試使用.bounds代替frame,並添加到以下方法的子視圖中。請看一下,因爲當用戶界面發生變化時調用此方法:'override func viewDidLayoutSubviews(){ super.viewDidLayoutSubviews() }' – Juan
當我編寫「添加到子視圖」時,我的意思是將您的代碼移動到添加的方法以前的評論 – Juan
它實際上調整了視圖的大小,所以它很合適,但現在ViewController3首先出現,我可以向右滑動到ViewController2,這就是所有... – TheoF