Показать информацию imageview при первом запуске приложения для iPhone

Мне интересно, как я могу добавить в приложение изображение, которое перекрывает весь экран информацией о самом приложении.

Это требования:

  • Показывать только один раз при первом запуске
  • Покройте весь экран (включая панель вкладок и панель навигации)
  • Когда пользователь нажимает на изображение, оно должно исчезнуть и больше не появляться;)

Пример (нашел только один на iPad, хотя он мне нужен для iPhone):

Как я могу это сделать? Есть ли какие-нибудь бесплатные фреймворки, которые я могу использовать? Любые советы, информация или ссылки очень ценятся.

2 ответа

Решение
  1. Проверьте NSUserDefaults, если представление справки было отображено (и отклонено) перед
  2. Создайте UIImageView и добавьте его в свой вид
  3. Добавьте UITapGestureRecognizer в imageView
  4. в действии жеста касания удалите справочное представление и сохраните в NSUserDefaults, чтобы представление было отклонено.

,

- (void)viewDidLoad {
    [super viewDidLoad];
    if (![[NSUserDefaults standardUserDefaults] boolForKey:@"didDisplayHelpScreen"]) {
        UIWindow *window = [[[UIApplication sharedApplication] windows] lastObject];

        UIImageView *imageView = [[UIImageView alloc] initWithFrame:window.bounds];
        imageView.image = [UIImage imageNamed:@"78-stopwatch"];
        imageView.backgroundColor = [UIColor greenColor];
        imageView.alpha = 0.5;
        UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(dismissHelpView:)];
        [imageView addGestureRecognizer:tapGesture];
        imageView.userInteractionEnabled = YES;
        [window addSubview:imageView];
    }
}

- (void)dismissHelpView:(UITapGestureRecognizer *)sender {
    UIView *helpImageView = sender.view;
    [helpImageView removeFromSuperview];
    [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"didDisplayHelpScreen"];
}

Определите некоторый ключ BOOL в NSUserDefaults. Если это НЕТ, тогда покажите свое наложение и установите его в ДА. В следующий раз, когда пользователь запустит приложение, этот шаг будет пропущен.

Чтобы добавить изображение для вашего вида, код будет выглядеть примерно так:

UIImageView *imageView = [[UIImageView alloc] initWithFrame:self.view.frame];
imageView.image = [UIImage imageNamed:@"overlay image"];
[self.view addSubview:imageView];
Другие вопросы по тегам