Я выпускаю вторую версию своего приложения, и мне нужно краткое описание новых функций. Я прошел руководство и создал свое пошаговое руководство в другом приложении с одним UIViewController, который является корневым представлением, и UIPageViewController, который содержит один UIView, в котором я показываю свои экраны. Это работает так, как я хочу.
Теперь я хочу интегрировать это в свое приложение. Я могу легко импортировать свой код из примера приложения.
Я верю, что делегат приложения увидит, проходил ли пользователь когда-либо пошаговое руководство, а если нет, переключусь на UIViewController, который запускает пошаговое руководство, и запишу в значение по умолчанию, что пользователь видел пошаговое руководство (поэтому ему не нужно видеть его снова). В пошаговом руководстве есть кнопка для перехода на главный экран.
Мой частичный код метода applicationdidFinishLaunchingWithOptions приведен ниже:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
UIPageControl *pageControl = [UIPageControl appearance];
pageControl.pageIndicatorTintColor = [UIColor lightGrayColor];
pageControl.currentPageIndicatorTintColor = [UIColor blackColor];
pageControl.backgroundColor = [UIColor whiteColor];
UIStoryboard *storyBoard;
storyBoard = [UIStoryboard storyboardWithName:@"MainStoryboard.storyboard" bundle:nil];
UIViewController *walkthrough = [storyBoard instantiateViewControllerWithIdentifier:@"NextViewController"];
//[self presentViewController:walkthrough animated:YES completion:nil];
[self.window setRootViewController:walkthrough];
return YES;
}
Вот готовый код, который работает. Большое спасибо за помощь:
// User Defaults
UserDefaults *thisUserDefaults = [[UserDefaults alloc] init];
[thisUserDefaults registerDefaults];
if (![[[NSUserDefaults standardUserDefaults]
valueForKey:kAppHasRunBeforeKey] boolValue]) {
UIPageControl *pageControl = [UIPageControl appearance];
pageControl.pageIndicatorTintColor = [UIColor lightGrayColor];
pageControl.currentPageIndicatorTintColor = [UIColor blackColor];
pageControl.backgroundColor = [UIColor whiteColor];
UIStoryboard *storyBoard;
storyBoard = [UIStoryboard storyboardWithName:@"Main_iPhone" bundle:nil];
UIViewController *walkthrough =
[storyBoard instantiateViewControllerWithIdentifier:@"ViewController"];
[self.window setRootViewController:walkthrough];
[[NSUserDefaults standardUserDefaults] setBool:YES
forKey:kAppHasRunBeforeKey];
}
Подробнее здесь: https://stackoverflow.com/questions/232 ... in-ios-app