3

手動でドラッグしたスクロールビューがありましたが、ボタンをクリックしたときにプログラムでスクロールビューを次のコードで移動したいと思います。

offset = CGPointMake(scrollView.contentOffset.x+320, 0);

[UIScrollView beginAnimations:@"scrollAnimation" context:nil];
[UIScrollView setAnimationDuration:0.5];
[scrollView1 setContentOffset:offset];
[UIScrollView commitAnimations];

これは正常に機能しますが、関数scrollViewBeginDraggingおよびscrollViewEndDeceleratingは呼び出されません。ドラッグの開始は私にとって問題ではありませんが、プログラムで起動されたときにスクロールビューの動きの終わりを検出する方法がわかりません。

前もって感謝します!

4

2 に答える 2

4

scrollViewDidEndScrollingAnimation:デリゲートメソッドを実装します。それがまさにその目的です。

于 2013-01-02T21:03:37.427 に答える
0

ええと...あなたはそれがいつ呼ばれることになっているのか知っていますよね?これらのコールバックはタッチを対象としているため、機能しませんが、0.5を終了するように指示しているので、デリゲートメソッドの呼び出しを自分でスケジュールしてみませんか?

[self performSelector:@selector(scrollViewDidEndDecelerating:) withObject:scrollView afterDelay:0.5];
于 2013-01-02T21:00:47.520 に答える