4

私は彼のサイズが1280X345であり、画面内で左右に動かしているというこの見方をしています。さて、私の主な質問は、iPhone IOSのホーム画面のように指で動かす(swipeLeft / swipeRightではない)方法です。

今、私はこのコードを使用しています:

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
    UITouch *touch = [touches anyObject];
    CGPoint location = [touch locationInView:infoView];
    //[self.view setTransform:CGAffineTransformTranslate(CGAffineTransformIdentity, (location.x + self.view.frame.origin.x - dx), 0.0)];
    NSLog(@"touch: %f",location.x);

    infoView.frame = CGRectMake(infoView.frame.origin.x + location.x, 0, 1280, 345);
}

それが現在の方法であるはずですが、私はそれを理解することができません。私もグーグルとここで答えを見つけようとしました、しかし、あなたが知っているように..私は何か役に立つものを見つけませんでした。

私もこれを作ったので、あなたはそれをよりよく理解することができます。

ここに画像の説明を入力してください

4

4 に答える 4

8

これを自分で行うコードを書かないでください。を使用しUIScrollViewます。これが設計されたものです。

于 2012-04-25T16:23:59.347 に答える
1

iPhone/iPad のホーム画面と同じ効果を得るには、UIScrollView を使用してページングを有効にする必要があります。

于 2012-04-26T04:12:05.350 に答える
0

UIScrollViewを避けて、何らかの理由で本当に自分で処理したい場合は、UIGestureRecognizers、特にUIPanGestureRecognizerがあり、1か所で複数のタッチイベントを処理するジョブのほとんどを活用できます。

于 2012-04-25T16:44:01.303 に答える
-1

UIPagecontrolとUIScrollViewを使用して作成しました。とても簡単でスマートなオブジェクト!

于 2012-04-26T21:30:39.067 に答える