0

アプリには2つのスクロールビューがあります。1つはUIImageViewsを含み、もう1つはUIButtonを含みます。NSTimerを使用して、自動的にスクロールさせます。ただし、一方のスクロールビューが改ざんされた場合(指がそれに触れて手動でスクロールを開始した場合)、もう一方のスクロールビューも停止します。これを防ぐ方法はありますか?それとも正常ですか?

また、2番目のスクロールビュー内のUIButtonはタップ可能ですが、標準の強調表示は表示されません。グロー効果を有効にすると機能しますが、標準のハイライトは機能しません。とにかく私もこれを機能させることができますか?

NSTimerの私のコードは

[NSTimer scheduledTimerWithTimeInterval:0.018 
                                 target:self 
                               selector:@selector(onTimerScrollText) 
                               userInfo:nil 
                                repeats:YES];

- (void)onTimerScrollText {
    CGFloat x = self.textScroller.contentOffset.x;

    x += 0.5;

    [self.textScroller setContentOffset:CGPointMake(x, 0)];
}

そして、それは画像スクローラーについてもほとんど同じです。

ありがとう!

4

1 に答える 1

0

一方のスクロールビューがもう一方の手動スクロールが終了するまでスクロールしないという最初の問題は解決されました。

解決策は簡単です。各タイマーを実行ループに追加する必要があります。

[[NSRunLoop mainRunLoop] addTimer:timer forMode:NSRunLoopCommonModes];

今では、どちらも指で邪魔されているかどうかに関係なく機能します。

于 2012-07-23T00:37:25.950 に答える