Я хочу отклонить UIAlertView где-нибудь за его пределами одним нажатием. Я хочу показать UIAlertView без кнопки.
У меня есть стандартные коды UIAlertView здесь, но мне нужно указать, как отменить его, если это возможно.
С UITouch? С UITapGestureRecognizer?
Спасибо.
EDIT:
in viewDidLoad
инициализация alertview здесь с именем "alert"
if (alert)
{
emptyview = [[UIView alloc]initWithFrame:CGRectMake(0,0,320,480)];
emptyview.backgroundColor = [UIColor clearColor];
[self.view addSubview:emptyview];
[emptyview addSubview:alert];
NSLog (@"emptyview is there!");
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTap:)];
[emptyview addGestureRecognizer:singleTap];
[singleTap release];
}
Но это пустое окно вообще не отвечает и не отвечает на селектор handleSingleTap, который я немного переписал:
-(void)handleSingleTap:(UITapGestureRecognizer *)sender{
[alert dismissWithClickedButtonIndex:0 animated:YES];
[emptyview removeFromSuperview];
}
Мне нужно, чтобы этот пустой вид находился в состоянии готовности, когда отображается предупреждение, после чего я могу отключить уведомление одним нажатием.
Я пробовал:
if (alert)
{
emptyview = [[UIView alloc]initWithFrame:CGRectMake(0,0,320,480)];
emptyview.backgroundColor = [UIColor clearColor];
[self.view addSubview:emptyview];
[emptyview addSubview:alert];
NSLog (@"emptyview is there!");
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTap:)];
[alert addGestureRecognizer:singleTap];
[singleTap release];
}
Конечно, alert реагировал на функцию handleSingleTap. Что я ошибся с пустым просмотром?
ВТОРОЙ РЕДАКТИРОВАНИЕ:
В этом случае я хочу показать небольшое представление с объяснением после выбора слова, аналогичной функции в приложении Kindle, если оно у вас есть. Может быть, я должен создать UIView вместо UIAlertView? Но маленький вид в приложении Kindle настолько хорош с тенью под ним, как это возможно?