По какой-то причине этот код не выполняется последовательно. Xcode, по-видимому, оценивает оператор if-else, а затем отображает UIAlertView
, который находится в инструкции if-else перед отображением UIAlertView
, который находится перед инструкциями if-else.Код не выполняется последовательно
Ниже мой код для справки:
- (IBAction)btnLogin:(id)sender; {
//self.tbxUsername.text = [NSString stringWithFormat:@"vmcv"];
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Email"
message: [NSString stringWithFormat: @"%@", acc.Email]
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
if([self.tbxUsername.text isEqualToString:acc.Email ])
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Authentication"
message: @"Success"
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
}
else
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Authentication"
message: @"Fail"
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
}
}
Спасибо за просветление. object-c действительно кажется v отличным от языков, которые я делал раньше, таких как C# и java. – fuzionist
Образец делегирования, показанный выше, является очень распространенным шаблоном проектирования, используемым в Objective-C и во всем SDK для iOS. Хорошие разработчики iOS знакомятся с ним и охватывают его в своем собственном коде. Чтобы получить больше опыта в деле делегирования, попробуйте реализовать и настроить UITableView. UITableView имеет как делегат, так и протокол данных, которые должны помочь вам узнать больше об этом шаблоне проектирования. – dfmuir