1

私のプロジェクトでは、2つの見方があります。1つはhomeViewControllerで、もう1つはsearchViewControllerです。homeViewControllerで右スワイプジェスチャを実行して、searchViewControllerを表示しました。しかしUISwipeGestureRecognizerDirectionRight、私にはうまくいきません。右ではなく左のアニメーションを提供します。

homeViewController.mに以下のコードを追加して、ジェスチャープロパティを追加し、SearchViewControllerを表示します。

UISwipeGestureRecognizer *swipeRecognizer=[[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeDetected:)];
   [swipeRecognizer setDirection:UISwipeGestureRecognizerDirectionRight];
   [self.view addGestureRecognizer:swipeRecognizer];
   [swipeRecognizer release];

-(void)swipeDetected:(UIGestureRecognizer *)sender
{
   SearchViewController *searchView=[[SearchViewController alloc] initWithNibName:@"SearchViewController" bundle:nil];
   [self.navigationController pushViewController:searchView animated:YES];
   [searchView release];
}

私を助けてください。ありがとう。

4

1 に答える 1

2

ここでのアニメーションは、ナビゲーションコントローラーpushViewController:animated:メソッドの一部として提供されます。ジェスチャーレコグナイザーの方向とは関係ありません(スワイプが認識されるためにユーザーがスワイプする必要がある方向を決定するだけです)。

ビューコントローラ間を他の方向にスワイプできるようにする場合は、UIPageViewControllerを確認できます。

于 2012-07-18T12:20:19.223 に答える