我有一個名爲CKCalendarViewControllerInternal
的自定義視圖控制器。在iOS中初始化視圖控制器sdk
CKCalendarViewControllerInternal
這個類的UIViewController
的子類。
CkCalendarViewController
我有一個名爲CKCalendarViewController自定義視圖控制器。它的UINavigationController
一個子類如下:
@interface CKCalendarViewController : UINavigationController <CKCalendarViewDelegate, UINavigationControllerDelegate>
這個類是與CKCalendarViewControllerInternal
如下初始化:
- (id)init
{
CKCalendarViewControllerInternal *calendarViewController = [CKCalendarViewControllerInternal new];
self = [super initWithRootViewController:calendarViewController];
}
現在,在AppDelegate
我的第一個觀點是如下:
AppDelegate中。 m
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController" bundle:nil] autorelease];
UINavigationController *n1=[[UINavigationController alloc]init];
n1.viewControllers=[[NSArray alloc]initWithObjects:self.viewController, nil];
self.window.rootViewController=n1;
[self.window makeKeyAndVisible];
return YES;
}
CkDemoViewController
這個類是CkCalendarViewController
子類如下
@interface CKDemoViewController : CKCalendarViewController
ViewController.m
當我嘗試推CKDemoViewController
按鈕點擊。
錯誤&問題 這說明我的錯誤一樣
Exception: Pushing a navigation controller is not supported Exception: [NSException]:Pushing a navigation controller is not supported ex.name:'NSInvalidArgumentException' ex.reason:'Pushing a navigation controller is not supported'
錯誤原因 這是因爲CKCalendarViewController
是UINavigationController
的子類。 如果我嘗試打開模式視圖,它完美的作品。
但是我怎樣才能初始化CKCalendarViewController
如上所示與CKCalendarViewControllerInternal
類?
謝謝
答案,將會極大地
爲什麼自定義視圖控制器分類爲'UINavigationController'? –
爲什麼你不在'[[CKCalendarViewController alloc] init]'? – Wain
@ LithuT.V,謝謝你的回覆。但這是日曆演示,我從可可控制這個項目。我不太瞭解這個。鏈接:[https://www.cocoacontrols.com/controls/mbcalendarkit] – user2526811