我正在使用Facebook SDK 3.0爲我的應用程序(基礎SDK:iOS5)和使用美味應用程序(示例應用程序)作爲教程。 Facebook沒有公開會話的情況下,以模態方式呈現登錄視圖控制器。但它沒有被模態地呈現。這是代碼;從AppDelegate調用presentModalViewController不起作用
- (void)showLoginView {
UIViewController *topViewController = [self.navigationController topViewController]; // not nil, RootViewController kind of class
UIViewController *modalViewController = [topViewController modalViewController]; // nil since not modalviewcontroller exists
if (![modalViewController isKindOfClass:[FacebookLoginViewController class]]) {
FacebookLoginViewController *loginViewController = [[FacebookLoginViewController alloc] initWithNibName:@"FacebookLoginViewController" bundle:nil]; // allocated, no problem
[topViewController presentModalViewController:loginViewController animated:NO]; // not working????
} else {
FacebookLoginViewController* loginViewController = (FacebookLoginViewController*)modalViewController;
[loginViewController loginFailed];
}
}
詳情;
- showLoginView正在從
application:didFinishLaunchingWithOptions:
調用,navigationController被showLoginView
稱爲showLoginView
- 前
viewDidLoad
方法分配 的navigationController的通話
RootViewController
之後被調用,topViewController
不爲零(這是什麼是應該是:RootViewController
)- navigationController是一類UINavigationController(非定製)
loginViewController
(FacebookLoginViewController
)的init
方法被調用,而不是它的viewDidLoad
方法)
日誌輸出:
2013年3月21日20:01:28.729 RootViewController的:viewDidLoad中
2013-03 -21 20:01:28.735 FacebookLoginViewController:Allocated
presentModalViewController:animated:已被棄用。嘗試使用presentViewController:代替。 – AMayes 2013-03-21 18:25:46
仍然沒有出現.. – Bartu 2013-03-21 18:30:36