iPhone - конфликт прокрутки UIScrollView и UIDatePicker: один мешает второму - PullRequest
3 голосов
/ 17 января 2011

У меня есть UIDatePicker внутри UIScrollView.Но UIDatePicker не отвечает на прикосновения прокрутки.Это прокрутка, которая прокручивается.Читая некоторые документы в сети, я установил для параметра «Задержки содержимого задержки» значение «НЕТ», и теперь я вижу, что средство выбора даты начинает небольшую прокрутку, но последнее слово все равно остается за обзором прокрутки.У меня есть место на экране, где пользователь может коснуться, чтобы прокрутить вид.Итак, как я могу разделить два вида свитков и сделать прокрутку DatePicker обычным способом?

Спасибо за вашу помощь

Ответы [ 2 ]

5 голосов
/ 17 января 2011

Решено с помощью этого поста: http://www.alexc.me/uiscrollview-and-uidatepicker/153/

Просто создайте класс с этим кодом внутри:

UIScrollViewBreaker.h

@interface UIScrollViewBreaker : UIScrollView {

}

- (BOOL)touchesShouldBegin:(NSSet *)touches withEvent:(UIEvent *)event inContentView:(UIView *)view;
- (BOOL)touchesShouldCancelInContentView:(UIView *)view;

@end

UIScrollViewBreaker.m

@implementation UIScrollViewBreaker


- (BOOL)touchesShouldBegin:(NSSet *)touches withEvent:(UIEvent *)event inContentView:(UIView *)view {

    if ([view isKindOfClass:[UIDatePicker class]] || [@"UIPickerTable" isEqualToString:[[view class] description]] ) {
        //|| [view isKindOfClass:[UIPicker class]]
        return YES;
    }
    return [super touchesShouldBegin:touches withEvent:event inContentView:view];
}

- (BOOL)touchesShouldCancelInContentView:(UIView *)view {
    if ([view isKindOfClass:[UIDatePicker class]] || [@"UIPickerTable" isEqualToString:[[view class] description]] ) {
        return NO;
    }
    return [super touchesShouldCancelInContentView:view];
}


@end

А в IB установите класс UIScrollView в UIScrollViewBreaker.

И это сделано.

Только не забудьте оставить какое-то место в представлении для пользователя, чтобы он мог прокручивать просмотр.

1 голос
/ 20 августа 2011

Объедините ответ @ Оливера с этим для вопросов, связанных с сокрытием текста на клавиатуре, и у вас есть один класс для просмотра с прокруткой.

http://github.com/webartisan/TPKeyboardAvoiding

Love Stackoverflow !!!!

Спасибо.

...