Оповещение в iphone
Я новичок в разработке приложений для iPhone. Я хочу создать представление предупреждения с помощью двух кнопок: OK
и Cancel
. Когда пользователь коснется кнопки OK
, я напечатаю сообщение с сообщением hello
. Когда они коснутся кнопки Cancel
, я напечатаю Cancel
.
Пожалуйста, помогите; как это сделать?
Ответы
Ответ 1
Чтобы показать предупреждение:
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Do you want to say hello?"
message:@"More info..."
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"Say Hello",nil];
[alert show];
[alert release];
Чтобы ответить на любую нажатую кнопку:
- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex {
if (buttonIndex == 0) {
NSLog(@"Cancel Tapped.");
}
else if (buttonIndex == 1) {
NSLog(@"OK Tapped. Hello World!");
}
}
Для получения дополнительной информации см. Ссылка на класс UIAlertView и UIAlertView Delegate Ссылка на протокол.
Ответ 2
так как выбранный ответ устарел, вот новое решение:
UIAlertController* alert = [UIAlertController alertControllerWithTitle:@"My Alert"
message:@"This is an alert."
preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction* defaultAction = [UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault
handler:^(UIAlertAction * action) {}];
[alert addAction:defaultAction];
[self presentViewController:alert animated:YES completion:nil];
Как показано в руководстве разработчика iOs.
Ответ 3
Показать оповещение со следующим фрагментом
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle:@"Make an informed choice"
message:nil
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"OK", nil];
[alert show];
Делегат настроен на себя, поэтому, когда предупреждение отклонено, наш собственный класс получит обратный вызов. Делегат должен реализовать протокол UIAlertViewDelegate.
- (void)alertView:(UIAlertView *)alertView
clickedButtonAtIndex:(NSInteger) buttonIndex{
if (buttonIndex == 1) {
// Do it!
} else {
// Cancel
}
}
Ответ 4
Вот несколько способов отображения предупреждений на iPhone
пожалуйста, проверьте эту ссылку для большего количества образцов и скриншотов.
(проект XCode с включенным исходным кодом)
- Простой лист действий
- ОК/Отменить лист действий
- Простое оповещение
//открыть предупреждение кнопкой ОК и отменить
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"UIAlertView"
message:@"My message" delegate:self cancelButtonTitle:@"Cancel"
otherButtonTitles:@"OK", nil];
[alert show];
[alert release];
Ответ 5
Для вывода отладки вы можете использовать (иногда бывает, что вы не можете использовать NSLog из-за ошибок, которые появляются только при запуске приложения на устройстве, а не из Xcode):
#define MY_ALERT(str) [[[UIAlertView alloc] initWithTitle:@"System Alert" message:str delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil] show]
Затем в вашем коде вы могли бы сделать, например:
MY_ALERT(NSStringFromCGRect(someView.frame))
Ответ 6
UIAlertView * alert = [[UIAlertView alloc]initWithTitle:@"Hello world" message:@"This is an alert view" delegate:self cancelButtonTitle:@"ok" otherButtonTitles:nil];
Таким образом мы создаем объект класса UIAlertView
и устанавливаем заголовок "Hello world", а также сообщение "Это вид предупреждения" и заголовок кнопки как ok.
Для подробного ответа посетите этот блог