Я пытаюсь сделать так, чтобы, когда пользователь нажимал элемент панели вкладок, вызывался UIAlertView, спрашивая, действительно ли он хочет изменить фактическую вкладку, проблема в том, что UIAlertView не останавливает код до получения ответа,код продолжает работать и в зависимости от предыдущего значения меняет viewcontroller или нет, а не фактический.
Я пытался ждать ответа некоторое время, но экран только темнеет, а предупреждение ненеожиданно возникнуть.Я также читал этот пост приостановить выполнение кода до UIAlertview , я пытался, но я не смог заставить его работать, может кто-то помочь, спасибо!
- (BOOL) tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController{
if (([self Myfunction]) && (viewController != [tabBarController.viewControllers objectAtIndex:0])){
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"text1" message:@"text2" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"OK", nil];
[alert show];
[alert release];
return boolean_var;
}
return YES;}
- (void)alertView:(UIAlertView *)alert clickedButtonAtIndex:(NSInteger)buttonIndex{
if (buttonIndex == 0) [self setBoolean_var:NO];
else [self setBoolean_var:YES];}