0

我有一个名为 start 的按钮,我想在方法中知道它的名称是什么,但我不确定该怎么做。这是按钮调用的方法。

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

NSLog 打印

按钮名称:(空)

4

3 回答 3

4

您可以通过设置按钮的标题

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

并获取标题(currentTitle 是只读的,可能为 nil):

[b currentTitle];

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

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

于 2010-11-12T18:30:43.623 回答
2

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

于 2012-05-08T09:51:27.917 回答
1

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

于 2010-11-12T20:36:58.293 回答