2010-11-12 75 views
0

我有一个名为start的按钮,我想知道它在调用它的名字的方法,我真的不知道该怎么做。这是按钮调用的方法。如何在操作中获取按钮的名称?

-(IBAction) startMotion: (id)sender { 
    UIButton * buttonName = (UIButton *) sender; 
    NSLog(@"Button Name: %@", buttonName.currentTitle); 
} 

的NSLog的打印

按钮名称:(空)

+1

你是如何设置按钮的标题? – 2010-11-12 17:33:19

+0

我在接口生成器中设置它。 – rd42 2010-11-12 19:44:27

+0

我也试过buttonName.titleLabel.text和buttonName.titleLabel出了一个P为其中一个按钮?! – rd42 2010-11-12 19:44:53

回答

1

我在Interface Builder中使用了错误的属性。我在Interface Builder中使用了按钮的名称属性,而不是按钮设置中的title属性。

4

您可以通过

[b setTitle:@"Start" forState:UIControlStateNormal]; 

设置按钮的标题,并拿到冠军( currentTitle是只读的,可能为零):

[b currentTitle]; 

顺便说一句,如果你只是想区分多个按钮,你可以设置按钮的标签属性(一个整数值)。

此外,请检查您的viewController类中是否已将按钮指定为IBOutlet,并将它作为Interface Builder中的插座正确连接?

+0

真棒谢谢你 – death7eater 2013-04-04 21:12:44

2

我宁愿设置某个标签并比较标签值,而不是阅读按钮的标题,因为您有可能将本地化您的应用程序的按钮标题可能会有所不同。