UIView
を使用してオブジェクトを移動していますUIPanGestureRecognizer
—画面上で指をどれだけドラッグするか、同じ方向にビューを移動します(Xのみ-左または右、Yは変更されません)。正常に動作しますが、(非常に目立つ)遅延があります。
UIPanGestureRecognizer
イベントを処理するメソッドは次のとおりです。
-(void)movePages:(UIPanGestureRecognizer *)sender
{
if (switchingMode == 1) {
if ([sender state] == UIGestureRecognizerStateBegan) {
fingerStartPosition = [sender locationInView:self.view].x;
viewStartPosition = [[viewControllers objectAtIndex:activeViewControllerIndex] view].center;
}
[[[[viewControllers objectAtIndex:activeViewControllerIndex] view] layer] setPosition:CGPointMake(viewStartPosition.x - (fingerStartPosition - [sender locationInView:self.view].x) , viewStartPosition.y)];
}
}
レイヤーを使用してビューの位置を設定しようとしました。また、さまざまな長さのアニメーションを使用してフレームを設定しようとしましたが、すべて同じように動作しました。この遅延が発生する理由はありますか?