我對Xcode有點新。已經啓動應用程序後加載不同的視圖控制器
我有一個關於加載不同的應用程序已經啓動的問題。我已經查看了過去的問題,例如我的問題,並看到appdelegate.m
文件中的答案,特別是didFinishWithLaunchingOptions
方法。
但是,答案所提供的代碼對我來說已經證明沒有補救辦法,因爲我使用的是storyboard
,從Xcode 5開始,不能再使用initwithnib
方法。
如果我的問題是不是你很清楚,我在appdelegate.m
代碼如下所示:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions
{
// Override point for customization after application launch.
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
if ([[NSUserDefaults standardUserDefaults] boolForKey:@"HasLaunchedOnce"])
{
NSLog(@"not first launch");
self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
self.window.rootViewController = self.viewController;
}
else
{
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"HasLaunchedOnce"];
[[NSUserDefaults standardUserDefaults] synchronize];
self.initialViewController = [[InitialViewController alloc] initWithNibName:@"InitialViewController" bundle:nil];
self.window.rootViewController = self.InitialViewController;
NSLog(@"first launch");
}
[self.window makeKeyAndVisible];
UIImage *navBackgroundImage = [UIImage imageNamed:@"nav_bg"];
[[UINavigationBar appearance] setBackgroundImage:navBackgroundImage forBarMetrics:UIBarMetricsDefault];
[[UINavigationBar appearance] setTitleTextAttributes: [NSDictionary dictionaryWithObjectsAndKeys:
[UIColor colorWithRed:10.0/255.0 green:10.0/255.0 blue:10.0/255.0 alpha:1.0], UITextAttributeTextColor,
[UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.8],UITextAttributeTextShadowColor,
[NSValue valueWithUIOffset:UIOffsetMake(0, 0)],
UITextAttributeTextShadowOffset,
[UIFont fontWithName:@"Avenir Next" size:20.0], UITextAttributeFont, nil]];
UIPageControl *pageControl = [UIPageControl appearance];
pageControl.pageIndicatorTintColor = [UIColor lightGrayColor];
pageControl.currentPageIndicatorTintColor = [UIColor blackColor];
pageControl.backgroundColor = [UIColor whiteColor];
return YES;
}
我在代碼中的錯誤面對,如下所示:
所以,幾乎我的問題是我試圖在我的方法中實現這個代碼塊在我的appdelegate.m
,但我面臨一些錯誤,我不知道他們爲什麼發生。
這裏也是我的兩個視圖控制器的照片,我想他們是最初的視圖,該視圖後,該應用程序已經加載一次:
如果提供任何幫助:
第一視圖控制器是一個
UIViewController
- 它被稱爲
ViewController
(在身份檢查器中的自定義CLAS s被命名爲「Viewcontroller
」) - 我已經爲此類實現了
ViewController.h
和.m文件。
- 它被稱爲
第二個視圖控制器也是一個UIViewController
- 這就是所謂
SWRevealViewController
(在身份檢查器中的自定義類被命名爲「SWRevealViewController
」) - 我已經實現
SWRevealViewController.h
和.m文件對於這個班級也是如此。
- 這就是所謂
@achievelimitless這兩個答案對我的問題都是正確的。謝謝您的幫助! –
@iDev只是一個問題。所以字符串@「<控制器ID>」,我把我的故事板ID或我的恢復ID? –