0

私のアプリケーションで、iPhone3GとiPhone3GSでのみ発生する奇妙な問題に気づきました。2ページのスクロールビューを作成しています。スクロールの2ページ目で、ピッカーをスクロールしようとすると、非常に応答しなくなります。私のアプリケーションでは、ピッカーのスクロールとスクロールビューのスクロールを区別できないようです。これは、上にスクロールして左に移動することがあるためです。

これはiPhone4とiPhone4Sでうまく機能することを覚えておいてください。

誰かが以前にこの問題に遭遇したことがありますか、または実際に何が起こっているのかについて何か考えがありますか?

4

3 に答える 3

1

どうやら、UIScrollViewとUIPickerViewを一緒に使用すると、問題が発生するようです。ただし、これはiPhone3とiPhone3GSでのみ発生しました。

解決策は、UIScrollViewをサブクラス化し、次のメソッドを実装することでした。

- (UIView *)hitTest:(CGPoint)point 
         withEvent:(UIEvent *)event
{
    UIView *result = [super hitTest:point withEvent:event];

    if ([result.superview isKindOfClass:[UIPickerView class]]) {
        self.canCancelContentTouches = NO;  
        self.delaysContentTouches = NO;
    }
    else {
        self.canCancelContentTouches = YES;
        self.delaysContentTouches = YES;
    }
    return result;
}
于 2012-04-23T23:33:35.817 に答える
0

ビルド設定でarmv7のみを有効にする必要があります(armv6ではありません)。これですべてです。

于 2012-04-23T15:23:16.703 に答える
0

スクロールビューにUIViewを追加し、UIViewにUIPickerViewを追加します。

于 2012-04-23T15:24:26.247 に答える