这是我的.h
xxxx : UIViewController<UITextFieldDelegate>
和我的.m
UITextField *quarterPicker = [[[UITextField alloc] init] autorelease];
[quarterPicker setFrame:CGRectMake(150, 370, 60, 30)];
[quarterPicker setText: @"Q1"];
quarterPicker.delegate = self;
我使用
-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
NSLog(@"textFieldShouldBeginEditing");
[textField resignFirstResponder];
[textField addTarget:self action:@selector(selectQuarterPicker:) forControlEvents:UIControlEventTouchDown];
return NO; // Hide both keyboard and blinking cursor.
}
当我触摸我的textField时,我总是看到此日志textFieldShouldBeginEditing
但是有一段时间,我的Picker没有表现出来。我使用:https://github.com/TimCinel/ActionSheetPicker制作Picker。
我发现,当我刷我的textFiled时,我的选择器会显示。
我该如何解决这个问题?
更新:我将UITextFiled
insite UIScrollView
答案 0 :(得分:0)
您在第一次触摸后添加触摸事件的目标。所以只有第二个才有效。为什么要添加此活动?您可以在不添加触摸事件的情况下在shouldBeginEditing中显示选择器
像
这样的东西[self selectQuarterPicker:self]; //assuming the parameter is the sender as you commented