2012-08-29 3 views
1

Я новичок в раскадровку и Xcode (используя 4.4)переход переход с условием раскадровки

Я хотел бы осуществить условие входа в систему, что если выполнено - переход будет работать. В противном случае пользователь должен оставаться на одном экране.

Я создал 2 UIView: контроллер ViewController и Bar.

Я также создал segue из ViewController в Bar Controller и установил его идентификатор для loginSegue как модальный.

В LoginViewController.m я добавил следующее:

- (IBAction)login:(id)sender { 
    self.email = self.emailText.text; 
    self.password = self.passwordText.text; 
    if ([self.email isEqualToString:@"O"] && [self.password isEqualToString:@"O"]) 
     [self performSegueWithIdentifier:@"LoginSegue" sender:sender]; 
    else 
     [passwordText setText:@""]; 
} 

Когда я отладки кода - я вижу, что если скачет на другой в случае электронной почты и пароль, который не равен O, однако переход (переход к новому виду) все еще происходит.

Как я могу предотвратить переход пользователя на новый вид?

BTW, если я удалю условие if else - пользователь автоматически переходит к следующему виду. Мне кажется, что он был сконфигурирован где-то, когда я нарисовал сегу из одного взгляда в другой.

ответ

6

Удалить пустую строку между вашим if и [self perform...]

Кроме того, вы можете рассмотреть вопрос о сохранении ваших if-else заявления в фигурные скобки, чтобы держать эту проблему не повторялись:

if ([self.email isEqualToString:@"O"] && [self.password isEqualToString:@"O"]){ 
    [self performSegueWithIdentifier:@"LoginSegue" sender:sender]; 
}else{ 
    [passwordText setText:@""]; 
} 

Если это Безразлично» t решить проблему, то обязательно убедитесь, что segue прикреплен к двум контроллерам, а не напрямую к кнопке.

+0

В моем коде у меня нет пустых строк - это было скопировано вот так (не знаю почему, я изменил его). в любом случае - добавление скобок не помогает – Dejell

+0

@Odelya Этот переход связан непосредственно с этой кнопкой в ​​построителе интерфейса? –

+0

в раскадровке, segue подключается из ViewController (вид входа) в контроллер табуляции. Я сделал это, щелкнув правой кнопкой мыши на контроллере входа в оранжевый значок и вычерчивая линию до контроллера панели вкладок и назначая идентификатор – Dejell

Смежные вопросы