Я как бы застрял на UIAlertViewStylePlainTextInput. (Мой код слишком длинный, чтобы публиковать здесь, но это та часть, где проблема существует.) Это все виды работ, но программа не дожидалась, пока пользователь вводит эту информацию, прежде чем продолжить. Кнопка «editName» не изменяет отображение в приведенном ниже коде, но кнопка updateDisplay работает нормально (если вы нажали кнопку «editName» перед нажатием «updateDisplay»). Как я могу заставить все остановиться, пока пользователь не войдет в информацию (или отменяет). Или есть еще кое-что, что приведет меня туда, куда мне нужно идти. (Я играл с остальной частью кода в (void) alertView, но это, похоже, не является правильным способом сделать это).UIAlertViewStylePlainTextInput - программа продолжается, не дожидаясь ввода текста от пользователя
Заранее спасибо.
#import "HSTestViewController.h"
@implementation HSTestViewController
@synthesize display;
NSString *newName;
- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex
{
if (buttonIndex == 1)
{
newName = [[alertView textFieldAtIndex:0] text];
}
}
- (void) getNewName;
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"You made the High Score List"
message:@"Please enter your name"
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"Ok", nil];
alert.alertViewStyle = UIAlertViewStylePlainTextInput;
[alert show];
}
- (IBAction)editName:(id)sender
{
[self getNewName];
newName = display.text;
}
- (IBAction)updateDisplay:(id)sender
{
display.text = newName;
}
@end
спасибо. Я переместил некоторые вещи, как вы предлагали, и теперь моя программа теперь делает именно то, что я намеревался сделать. Я также добавил UIAlertViewDelegate, чего я раньше не делал. – ShadowDES