【发布时间】:2014-08-09 16:15:43
【问题描述】:
我有一个 ViewController,它调用一个类来构建一个菜单。此菜单使用 buttonClicked 方法绘制一个按钮。我从许多不同的 ViewController 调用此菜单,因此我需要此菜单根据调用它的 ViewController 调用不同的按钮方法。我想不出这个怎么编程?
class MenuController : UIViewController
{
override func viewDidLoad()
{
super.viewDidLoad()
var menu = Menu()
self.view.addSubview(menu)
}
func buttonClicked(sender:UIButton)
{
var tag = sender.tag
println("I want the button click method to call this method")
}
}
class Menu:UIView
{
init()
{
var button:UIButton = UIButton.buttonWithType(UIButtonType.Custom) as UIButton
button.frame = CGRectMake(0,0,280, 25)
button.addTarget(self, action: "buttonClicked:", forControlEvents: UIControlEvents.TouchUpInside)
button.tag = Int(itemNo)
menu.addSubview(button)
}
func buttonClicked(sender:UIButton)
{
var tag = sender.tag
println(tag)
}
}
【问题讨论】: