我有一个 Xcode 5 按钮问题。
我以编程方式在 a 上创建了许多按钮UIViewController
,然后想要注册对这些按钮的点击。我NSLog
用来跟踪点击次数,但似乎日志中没有记录点击次数。
有人可以帮忙吗?
最终目标是UIViewController
在每次按钮点击时继续下一步,但只是测试是否首先注册按钮点击。
这是我在其中创建按钮的方式viewDidLoad
(仅显示 1 个)。注意:if-statement
仅用于检查在前一个视图中按下了哪些按钮。
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
NSString *myString = [NSString stringWithFormat:@"%d", self.tagNumber ];
if (self.tagNumber == 1)
{
hotelButton = [UIButton buttonWithType:UIButtonTypeCustom];
hotelButton.tag = 1;
hotelButton.frame = CGRectMake(60, 60, 300.f, 100.f);
UIImage *buttonImage1 = [UIImage imageNamed:@"buttonImage1.png"];
[hotelButton setBackgroundImage:buttonImage1 forState:UIControlStateNormal];
[self.view addSubview:hotelButton];
// Add targets and actions
[hotelButton addTarget:self action:@selector(buttonClicked) forControlEvents:UIControlEventTouchUpOutside];
}
}
这是我检查按钮点击的方法
- (void) buttonClicked
{
NSLog(@"Button %i clicked", hotelButton.tag);
}
注意:我还尝试了以下方法:
- (void) buttonClicked:(UIButton *) button
{
NSLog(@"Button %ld clicked", (long int)[button tag]);
}
buttonClicked
但这在我viewDidLoad
指向 action@selector时给出了错误“未声明的选择器”):
[hotelButton addTarget:self action:@selector(buttonClicked) forControlEvents:UIControlEventTouchUpOutside];