2016-02-24 97 views
4

是否可以在故​​事板上創建可重用堆棧視圖,以便以後可以動態使用?排序模板/窗口小部件/組件。XCode:是否可以創建可重用的堆棧視圖?

我知道我可以用類做到這一點,但如果我能夠直觀地生成一組可以在後期重新使用的組件,我可以讓我們的設計人員直接更改故事板。

回答

2

是的。

  1. 創建一個空的xib,然後向它添加一個堆棧視圖。
  2. 然後創建一個擴展UIStackView的類。

    class stackView: UIStackView { 
    
    var contentView : UIStackView! 
    override init(frame: CGRect) { 
        super.init(frame: frame) 
        xibSetup() 
    } 
    
    required init(coder: NSCoder) { 
        super.init(coder: coder) 
        xibSetup() } 
    
    func xibSetup() { 
        contentView = loadViewFromNib() 
        contentView.frame = bounds 
        contentView.autoresizingMask = [UIViewAutoresizing.flexibleWidth, UIViewAutoresizing.flexibleHeight] 
        addSubview(contentView) 
    } 
    
    func loadViewFromNib() -> UIStackView! { 
    
        let view: UIStackView? = Bundle.main.loadNibNamed("stackView", owner: nil, options: nil)?.first as! UIStackView? 
        return view 
    } 
    
  3. 創建viewController.Add一個stackView到it.In StackView屬性,命名爲自定義類轉到第3條,類名是給stackView類名

相關問題