Как получить UIAlertView название других кнопок?
-(void) alertView: (UIAlertView *) alertVw clickedButtonAtIndex:(NSInteger)buttonIndex
{
NSString *str = [NSString stringWithFormat:@"%d 。", buttonIndex];
UIAlertView *newAlertVw = [[UIAlertView alloc] initWithTitle:@"INFO" message:str delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
[newAlertVw show];
}
UIAlertView *alertVw = [[UIAlertView alloc] initWithTitle:@"TITLE"
message:@"box message"
delegate:self
cancelButtonTitle:@"hide"
otherButtonTitles:@"T1", @"T2", nil];
[alertVw show];
если пользователь коснулся одной из других кнопок, то мы знаем, к какой кнопке прикоснулся пользователь. тогда, как я могу получить название кнопки, которую пользователь только что коснулся? Благодарю.
3 ответа
С делегатом на вашем UIAlertView
установлен в self
Вы можете использовать это:
-(void)alertView:(UIAlertView*)alertView didDismissWithButtonAtIndex:(NSInteger)buttonIndex
{
NSLog(@"Button Title -----> %@",[alertView buttonTitleAtIndex:buttonIndex]);
// or you can check if it equals to string
if([[alertView buttonTitleAtIndex:buttonIndex]isEqual:@"Enter"])
{
// your code goes here
}
}
Метод buttonTitleAtIndex:
и информация просто найдена на странице документа UIAlertView.
Я советую вам обращаться к документу как можно чаще, именно так вы будете учиться и запоминать.
На самом деле, если вы хотите использовать метод делегата, вы должны использовать -(void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex
,
и не
- (void) alertView: (UIAlertView *) alertView didDismissWithButton At Index: (NSInteger) buttonIndex
Я думаю, это была просто опечатка Панчо.