Я использую NSUserDefaults для отображения UIAlertView при первой загрузке моего приложения. Оповещение имеет кнопку «Отклонить» и «Оценить сейчас». Увольнение говорит само за себя и работает нормально, однако я хочу, чтобы кнопка «Оценить сейчас» открыла соответствующее местоположение в App Store на устройстве. Я использую следующий код в моем файле AppDelegate.m.
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *alertshown = [defaults stringForKey:@"alertshown"]; {
if (alertshown == nil) {
UIAlertView *oneTimeWelcome = [[UIAlertView alloc]
initWithTitle: @"Thank You"
message: @"Blah Blah Blah Blah"
delegate: self
cancelButtonTitle:@"Dismiss"
otherButtonTitles:@"Rate Now",nil];
[oneTimeWelcome show];
[oneTimeWelcome release];
[defaults setObject:@"alertwasdisplayed" forKey:@"alertshown"];
}
При предыдущем использовании второй кнопки в UIAlertView я использовал этот код для вызова нового представления;
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
if (buttonIndex == 0)
{
// Do something wonderful here
}
else if (buttonIndex == 1)
{
AppSupportView *controller = [[AppSupportView alloc] initWithNibName:@"AppSupportView" bundle:nil];
controller.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:controller animated:YES];
[controller release];
}
Однако, это не работает, когда код используется в файле AppDelegate.m ?? Любые примеры были бы хороши, чтобы получить мою кнопку Оценить сейчас, чтобы открыть App Store. Извините за форматирование, но это не позволило мне изменить текст
РЕДАКТИРОВАТЬ - Это полный код, с которым я имею дело в файле AppDelegate.m
{// Этот следующий блок кода отображает UIAlert, когда пользователь впервые открывает приложение. Это отображается только если alerthown == 0
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *alertshown = [defaults stringForKey:@"alertshown"]; {
if (alertshown == nil) {
UIAlertView *oneTimeWelcome = [[UIAlertView alloc]
initWithTitle: @"Thank You"
message: @"Thanks, please rate blah blah blah"
delegate: self
cancelButtonTitle:@"Dismiss"
otherButtonTitles:@"Rate Now",nil];
[oneTimeWelcome show];
[oneTimeWelcome release];
[defaults setObject:@"alertwasdisplayed" forKey:@"alertshown"];
}
}
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
if (buttonIndex == 0)
{
// Yes, do something
}
else if (buttonIndex == 1)
{