UIToolbar xib xcode

Posted

技术标签:

【中文标题】UIToolbar xib xcode【英文标题】: 【发布时间】:2014-06-02 23:57:04 【问题描述】:

我正在尝试创建一个可以添加到多个视图的自定义 UIToolbar,我不想以编程方式执行此操作,因此我使用 xib 来设计 UIToolbar。我需要将它包装在 UIView 和视图控制器中吗? ViewController.m 是根视图控制器。这只是一个简单的项目,我只是在尝试一些东西

【问题讨论】:

你有没有得到这个答案? 【参考方案1】:

你可以这样做:

    创建ToolBar.xib文件,删除UIView,添加UIToolbar 创建 ToolBar.swift 文件,添加代码,如图所示,然后制作 outlet 对于“身份和类型”中的 .xib 输入名称“ToolBar.swift”

    在您的根视图控制器中,将此代码放入 ViewDidLoad:

    let toolBar = UINib(nibName: "ToolBar", bundle: nil).instantiateWithOwner(nil, options: nil).first as! ToolBar
    toolBar.hidden = true
    self.navigationController!.view.addSubview(toolBar)
    self.navigationController!.toolbarItems = toolBar.items
    

    在所有视图控制器中放入 ViewDidLoad:

    self.toolbarItems = self.navigationController!.toolbarItems
    

    工具栏.swift:

    import UIKit
    
    class ToolBar: UIToolbar 
    
        override init(frame: CGRect) 
            super.init(frame: frame)
        
    
        required init?(coder aDecoder: NSCoder) 
            super.init(coder: aDecoder)
        
    
        @IBAction func item1Pressed(sender: AnyObject) 
            print("item 1 pressed")
        
    
        @IBAction func item2Pressed(sender: AnyObject) 
            print("item 2 pressed")
        
    
        @IBAction func item3Pressed(sender: AnyObject) 
            print("item 3 pressed")
        
    
        @IBAction func item4Pressed(sender: AnyObject) 
            print("item 4 pressed")
        
    
    
    

【讨论】:

4 点错误。去掉第二行(会隐藏工具栏),第三行是错误的,因为它会在navigationController的顶部添加视图,正确的是:self.navigationController!.toolbar.addSubview(toolBar)。四行没用。

以上是关于UIToolbar xib xcode的主要内容,如果未能解决你的问题,请参考以下文章

自定义 UIToolbar 按钮不起作用

UIToolbar 上的按钮间距

UIToolbar 和 UIImageView 未显示在模拟器中

UISegmentedControl 不响应触摸

使用自动布局以编程方式创建视图层次结构

在文本字段点击上显示日期选择器