Допустим, в порядке навигации ваши представления сложены как top -> 3 -> 2 -> 1. Когда вы находитесь в этой позиции, у вас может быть флаг в делегате приложения, который показывает, что вы будете использовать doublePop при нажатии кнопки BackButton, как показано ниже: (Вы делаете это всякий раз, когда появляется третье представление в указанном вами порядке)
MyApplicationDelegate * del = [[UIApplication sharedApplication]delegate];
del.doublePopEnabled = YES;
[del release];
В представлении 2:
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
MyApplicationDelegate * del = [[UIApplication sharedApplication]delegate];
if(del.doublePopEnabled){
//Asssuming you have a reference to your navigationController in your view 2
del.doublePopEnabled = NO;
[del.release]
//Use animated as no if you don't want user to see doublePopping.
self.navigationController popViewControllerAnimated:NO];
}
}
Надеюсь, это поможет.