標籤:運行 finish ini load() pos super delegate roo idt
雖然Swift可以純程式碼設計介面,不過不利用先用的視覺化檢視有時候有點效率低。下面是使用xib設計方法,部分代碼來自網上。
(1)建立View
2、建立View class
3、DemoView.swift中
class DemoView: UIView {
// MARK:- 建立視圖
class func newInstance() -> DemoView? {
let nibView = Bundle.main.loadNibNamed("DemoView", owner: nil, options: nil);
if let view = nibView?.first as? DemoView {
return view
}
return nil
}
4、ViewController中
class LoginViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
var myView = Bundle.main.loadNibNamed("DemoView", owner: nil, options: nil)?.first as? DemoView
myView?.frame = CGRect(x: 0, y: 0, width: self.view.frame.width-50, height: self.view.frame.height-140)
myView?.center = self.view.center
if myView != nil {
self.view.addSubview(myView!)
}
}
5、調用ViewController
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
window=UIWindow(frame: UIScreen.main.bounds)
window?.backgroundColor=UIColor.white
window?.makeKeyAndVisible()
window?.rootViewController=LoginViewController();
//window?.rootViewController=MainViewController()
return true
}
6、注意xib要設定
7、添加幾個控制項效果
8、點擊兩個圓環形狀
9、Button上右鍵連線代碼
10、運行點擊按鈕看到控制台顯示adfa.
Swift下使用Xib設計介面