UIToolbar xib xcode

时间:2014-06-02 23:57:04

标签: ios objective-c xcode uitoolbar

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

UIToolbar XIB

Adding CustomToolbar to the Root UIView

1 个答案:

答案 0 :(得分:1)

你可以这样做:

  1. 创建ToolBar.xib文件,删除UIView并添加UIToolbar
  2. 创建ToolBar.swift文件,添加代码,如图所示,并制作出口
  3. for .xib in" Identity and Type"把名字" ToolBar.swift"
  4. /Users/Igor/Desktop/Снимок экрана 2016-01-05 в 03.34.33.png

    1. 在根视图控制器中将此代码放在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
      
    2. 放入ViewDidLoad的所有View控制器:

      self.toolbarItems = self.navigationController!.toolbarItems
      
    3. ToolBar.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")
          }
      
      }