我正在尝试创建一个可以添加到多个视图的自定义UIToolbar,我不想以编程方式执行此操作,因此我使用xib来设计UIToolbar。我需要将它包装在UIView和View Controller中吗? ViewController.m是根视图控制器。这只是一个简单的项目我只想尝试一些东西
答案 0 :(得分: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
放入ViewDidLoad的所有View控制器:
self.toolbarItems = self.navigationController!.toolbarItems
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")
}
}