UIToolbar xib xcode

前端 未结 1 1970
陌清茗
陌清茗 2021-01-24 00:23

I am trying to create a custom UIToolbar that I can add to multiple views, I don\'t want to do this programmatically so I am using xib to design a UIToolbar. Do I need to wrap

1条回答
  •  梦毁少年i
    2021-01-24 01:15

    You can do this so:

    1. create ToolBar.xib file, delete UIView and add UIToolbar
    2. create ToolBar.swift file, add code, like shown, and make outlets
    3. for .xib in "Identity and Type" put Name "ToolBar.swift"

    1. In your root View Controller put this code in 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. In all View Controllers put in ViewDidLoad:

      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")
          }
      
      }
      

    0 讨论(0)
提交回复
热议问题