在屏幕右下角添加一个按钮:
UIButton *testBtn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[testBtn addTarget:self action:@selector(test:) forControlEvents:UIControlEventTouchUpInside];
CGRect screenRect = [[UIScreen mainScreen] bounds];
CGFloat screenWidth = screenRect.size.width;
CGFloat screenHeight = screenRect.size.height;
testBtn.frame = CGRectMake(screenWidth - 100, screenHeight - 100, 100, 100);
[self.view addSubview:testBtn];
我可以看到按钮,然后点按它会立即变成蓝色。它只是不调用test:方法。为什么不呢?
编辑 - 这是目标方法:
- (void)test:(id)sender {
NSLog(@"hi");
}
答案 0 :(得分:4)
可能是因为您的选择器是测试:而不仅仅是测试?另外,你把它叫做lockBtn,但你用btn来引用方法调用...你可能引用了一个不同的按钮?
答案 1 :(得分:4)
lockBtn
,但您要将目标添加到btn
。@selector(test)
而不是@selector(test:)
。