iOS 7.1 UITapGesture не работает с UIPickerView
Мы используемUIPickerView
чтобы позволить пользователю выбирать из списка вариантов. Мы добавляемUIPickerView
как подпредставление контейнера UIView. Затем мы добавляем UITapGestureRecognizer в контейнерUIView
,UITapGestureRecognizer
используется, чтобы уволить сборщика, удалив его супер вид.
В iOS 7.0 и предыдущих версиях это работало как ожидалось. Однако в iOS 7.1 эта настройка больше не работает в том смысле, чтоUITapGestureRecognizer
не распознает касание и не вызывает селектор, указанный в действии (закрывает вид сборщика и вид контейнера). код ниже
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
self.nameList=[[NSMutableArray alloc] initWithObjects:@"A",@"B",@"C", nil];
UIPickerView *myPickerView = [[UIPickerView alloc] initWithFrame:CGRectMake(0, 200, 320, 200)];
myPickerView.delegate = self;
myPickerView.showsSelectionIndicator = YES;
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapInListPickerView:)];
[singleTap setNumberOfTapsRequired:1];
[singleTap setNumberOfTouchesRequired:1];
[myPickerView addGestureRecognizer:singleTap];
[self.view addSubview:myPickerView];
}
-(void)tapInListPickerView:(UIGestureRecognizer *)sender
{
NSLog(@"Taped in pikcer view");
}
Если требуется какая-либо другая информация или если есть более предпочтительный метод для этого, пожалуйста, дайте мне знать.