我创建了一个标签,然后在上面设置的点击,但是点击之后报错
.h文件:
@interface ViewController : UIViewController
{
UILabel *alabel;
}
@property (strong, nonatomic) UILabel *alabel;
.m文件:
- (void)viewDidLoad
{
[super viewDidLoad];
alabel = [[UILabel alloc] initWithFrame:CGRectMake(10, 10, 100, 50)];
alabel.text = @"Drag me!";
alabel.userInteractionEnabled = YES;
UITapGestureRecognizer *tapGesture =[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(labelTap)];
[alabel addGestureRecognizer:tapGesture];
[self.view addSubview:alabel];
}
- (void)labelTap:(UITapGestureRecognizer *)tapGesture {
TouchLabelViewController *touchLabelViewController = [[TouchLabelViewController alloc] initWithNibName:@"TouchLabelViewController" bundle:[NSBundle mainBundle]];
[self presentModalViewController:touchLabelViewController animated:NO];
}
日志显示:
2012-10-29 11:19:17.313 DragableControll[795:f803] -[ViewController labelTap]: unrecognized selector sent to instance 0x68956b0
2012-10-29 11:19:17.316 DragableControll[795:f803] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[ViewController labelTap]: unrecognized selector sent to instance 0x68956b0'
lz把Selector加错了
UITapGestureRecognizer *tapGesture =[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(labelTap)];
应该改为:
UITapGestureRecognizer *tapGesture =[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(labelTap:)];
看上去是你的selector出问题了,
把代码改成我的:
UITapGestureRecognizer *tapGesture =[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(labelTap:)];
好人一生平安!!!!!!!果真是这样!!!!!我是添加了一个键盘消失的事件,还以为键盘消失后,是坐标出了问题...........