2016-03-24 36 views
0

以及我想創建通知按鈕,當用戶點擊它會顯示他的ViewController什麼如何我可以加載的viewController不是XIB文件

,我發現這個庫

https://github.com/lucaslt89/PopupContainer

的主要問題你可以實現從xib文件nib文件和只有UIView

它可以從控制器從主要故事板加載?

這是代碼

@IBAction func showFromXibButtonPressed(sender: AnyObject) { 
    let xibView = NSBundle.mainBundle().loadNibNamed("XibPopup", owner: nil, options: nil)[0] as! XibPopup 
    PopupContainer.generatePopupWithView(xibView).show() 
} 

回答

2

你可以做到這一點通過將視圖控制器,你可以從故事板獲得的視圖。

@IBAction func showFromXibButtonPressed(sender: AnyObject) { 
    let storyboard = UIStoryboard(name: "StoryboardName", bundle: nil) 
    let vc = storyboard.instantiateViewControllerWithIdentifier("myViewController") as! UIViewController 
    PopupContainer.generatePopupWithView(vc.view).show() 
} 

請在故事板分配適當的ViewController標識,並與合適的storybaord名

代碼通過檢查獵人的格式更新的代碼,每個問題要求更新同一

+0

你知道嗎,你是coooool! 感謝:$ –

1

假設您的故事板命名爲「Main」,並且您有初始視圖控制器,則會從該控制器加載視圖:

@IBAction func showFromXibButtonPressed(sender: AnyObject) { 
    let controller = UIStoryboard(name: "Main", bundle: nil).instantiateInitialViewController() 
    PopupContainer.generatePopupWithView(controller!.view).show() 
} 

請注意,最好的做法是將IBAction的名稱更改爲showFromViewControllerButtonPressed,但上述名稱將起作用。

+0

沒問題的哥們 –

相關問題