проведите пальцем к новому наконечнику - PullRequest
0 голосов
/ 20 октября 2011

Я просто хочу провести пальцем по новому наконечнику, но я застреваю.Мой код собирается правильно, без ошибок и предупреждений, но ничего не происходит.

Вот мой код

- (IBAction) handleSwipeGesture:(UIGestureRecognizer *) sener { 
        NSLog(@"swipe left");
    if(UISwipeGestureRecognizerDirectionLeft) {
        SecondDetailViewController *tempController = [[SecondDetailViewController alloc] 
         initWithNibName:@"SecondDetailView" 
          bundle:nil];
        newController = [tempController retain];
        [tempController release];
    }

}

Система видит, что я провожу (она регистрируется), но это не такперейти на новый кончик.Я не женат на своем коде, поэтому, если мне нужно полностью переписать это, я в порядке.

Ответы [ 2 ]

3 голосов
/ 20 октября 2011

Предполагая, что вы обрабатываете жест смахивания внутри контроллера представления (и используете контроллер навигации), вы должны сделать что-то подобное:

- (IBAction)handleSwipeGesture:(UISwipeGestureRecognizer *)sender { 
    if(sender.direction == UISwipeGestureRecognizerDirectionLeft) {
        NSLog(@"swipe left");
        SecondDetailViewController *tempController = [[SecondDetailViewController alloc]
                                  initWithNibName:@"SecondDetailView" bundle:nil];
        [self.navigationController pushViewController:tempController animated:YES];
        [tempController release];
    }
}

Эта строка выдвигает tempController поверх навигационного контроллера:

[self.navigationController pushViewController:tempController animated:YES];

если вы хотите представить tempController модально, вы должны вызвать это вместо:

[self presentModalViewController:tempController animated:YES];
0 голосов
/ 20 октября 2011

Вы ничего не делаете с объектом newController после его создания.Вам нужно либо вставить его на свой навигационный контроллер, либо представить его модально, либо взять вид и поместить его на экран.

...