1

UIPickerView を scrollview に追加します。pickerview から行を選択すると、非表示になり、選択できませんでした。これは、ユーザーが pickerView 以外の画面 (scrollView) の任意の場所をタップしたときに pickerview を削除するコードを記述したためです。ピッカービューをタップ(選択)しますタッチがScrollViewとして検出されたため、ピッカービューが非表示になりました。どこが間違っているのかわかりませんでした。

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch{

    if(touch.view==testScroll)
    {

        if(UI_USER_INTERFACE_IDIOM()==UIUserInterfaceIdiomPad)
        {
            ViewForValuePicker.hidden=true;//view to which pickerview is added and this s view is added to scrollview
            pickerView.hidden=YES;

        }
        return YES; 
    } 
   else

        return NO; 
}

画面のどこかをクリックしたときにピッカービューを削除し、ピッカービューの行をタップしても削除しないようにするにはどうすればよいですか

4

2 に答える 2

0

このようにしてみてください。

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event  {
    NSLog(@"touches began");
    UITouch *touch = [touches anyObject];   
    if([touch view] isKindOfClass:[UIScrollView class]){

    //do whatever you want to do  here

   }
}
于 2013-04-16T10:43:16.940 に答える