2012-03-06 6 views
0

Каждый раз, когда я выхожу из текстового поля, должен отображаться UIA-лист, а также сохранять некоторую информацию. когда я выхожу из текстового поля, программа завершает работу, а консоль говорит о вызываемом недействительном классе. Почему этот код не работает?Почему мой класс не называется?

- (IBAction)classFieldDoneEditing:(id)sender 

- (IBAction)classFieldDoneEditing:(id)sender 
        withActionSheet:(UIActionSheet *)typeSheet clickedButtonAtIndex:(NSInteger)buttonIndex { 
    self.indicatedClass = classField.text; 
    NSString *greeting = [[NSString alloc] 
          initWithFormat:@"%@", indicatedClass]; 
    labelClassTitle.text = greeting; 
    labelClassTitle.hidden = NO; 
    [greeting release]; 
    [sender resignFirstResponder]; 

    typeSheet = [[UIActionSheet alloc] 
           initWithTitle:@"Class types"delegate:self 
           cancelButtonTitle:nil 
           destructiveButtonTitle:nil 
           otherButtonTitles:@"Core Class", @"Elective", nil]; 
    [typeSheet showInView:self.view]; 
    [typeSheet release]; 

    if (buttonIndex == 0) { 
     self.indicatedClass = classField.text; 
     NSString *indicatedString = indicatedClass; 
     NSString *greeting = [[NSString alloc]  
           initWithFormat:@"%@ meets 6 times per rotation",  indicatedString]; 
     labelClassTitle.text = greeting; 
     labelClassTitle.hidden = NO; 
     [greeting release]; 
     [indicatedClass release]; 
    } 

    else if (buttonIndex == 1) { 
     self.indicatedClass = classField.text; 
     NSString *indicatedString = indicatedClass; 
     NSString *greeting = [[NSString alloc] 
           initWithFormat:@"%@ meets 3 times per rotation", indicatedString]; 
     labelClassTitle.text = greeting; 
     labelClassTitle.hidden = NO; 
     [greeting release]; 
     [indicatedClass release]; 
    } 
} 

ответ

0

Действие выглядит хорошо. Убедитесь, что вы связали действие editDidEnd в Interface Builder.

+0

Я связал его – mentorship

0

Я предлагаю вам начать с реализации протокола UITextFieldDelegate в файле H

также я хотел бы использовать следующий код - убедившись, что ваш TextField подключен к действию, которое вы хотите запустить на ГОТВО (с использованием застройщиком Interface)

#pragma mark - 
#pragma mark Text Field Delegate 
- (BOOL)textFieldShouldReturn:(UITextField *)textField{ 
    if ([textField canResignFirstResponder]) { 
     [textField resignFirstResponder]; 
    } 

    return YES; 
} 
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField{ 
    // add your method here 

    return YES; 
} 
- (void)textFieldDidEndEditing:(UITextField *)textField{ 

} 
+0

Это мое первое программирование, поэтому этот код не имеет для меня большого смысла. Когда я его реализовал, было много ошибок. – mentorship

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