在Facebook connect的iOS中使用故事板而不是.xib文件
我正在iOS上从头开始开发一个应用程序,它使用Facebook登录。 我找不到使用故事板的教程;他们都使用.xib文件,甚至在Facebook教程上也是如此 是否建议Facebook connect应用程序使用.xib文件?在Facebook connect的iOS中使用故事板而不是.xib文件,ios,facebook,cocoa-touch,interface-builder,Ios,Facebook,Cocoa Touch,Interface Builder,我正在iOS上从头开始开发一个应用程序,它使用Facebook登录。 我找不到使用故事板的教程;他们都使用.xib文件,甚至在Facebook教程上也是如此 是否建议Facebook connect应用程序使用.xib文件? 如果是,原因是什么?使用.xib文件或故事板并不重要,最终结果是一样的。如果你想了解一些关于如何采用故事板的信息,请查看好的,最后这并不难。 我发现: 它非常相似,所以这是我个人的实现 在情节提要中创建两个视图,对我来说,它们被命名为SCViewController和SCL
如果是,原因是什么?使用.xib文件或故事板并不重要,最终结果是一样的。如果你想了解一些关于如何采用故事板的信息,请查看好的,最后这并不难。 我发现: 它非常相似,所以这是我个人的实现 在情节提要中创建两个视图,对我来说,它们被命名为SCViewController和SCLoginViewController(我使用了相同的类名和情节提要ID)。 然后添加导航控制器,并将箭头指向导航控制器上显示的第一个元素 然后,在应用程序委托实现文件中,将其添加到didFinishLaunchingWithOptions函数:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// See if the app has a valid token for the current state.
if (FBSession.activeSession.state == FBSessionStateCreatedTokenLoaded) {
// Yes, so just open the session (this won't display any UX).
[self openSession];
} else {
// No, display the login page.
[self showLoginView];
}
return YES;
}
- (void)showLoginView
{
NSBundle *bundle = [NSBundle mainBundle];
NSString *sbFile = [bundle objectForInfoDictionaryKey:@"UIMainStoryboardFile"];
UIStoryboard *sb = [UIStoryboard storyboardWithName:sbFile bundle:bundle];
UIViewController *rootController;
rootController = [sb instantiateViewControllerWithIdentifier:@"SCLoginViewController"];
[self.window setRootViewController:rootController];
}
并添加以下功能:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// See if the app has a valid token for the current state.
if (FBSession.activeSession.state == FBSessionStateCreatedTokenLoaded) {
// Yes, so just open the session (this won't display any UX).
[self openSession];
} else {
// No, display the login page.
[self showLoginView];
}
return YES;
}
- (void)showLoginView
{
NSBundle *bundle = [NSBundle mainBundle];
NSString *sbFile = [bundle objectForInfoDictionaryKey:@"UIMainStoryboardFile"];
UIStoryboard *sb = [UIStoryboard storyboardWithName:sbFile bundle:bundle];
UIViewController *rootController;
rootController = [sb instantiateViewControllerWithIdentifier:@"SCLoginViewController"];
[self.window setRootViewController:rootController];
}
如果在打开应用程序时已登录,则到达SCViewController,否则到达SCLoginViewController
然后,您可以按照Facebook上的iOS教程(AppScrumpious)进行操作,就像使用.xib文件一样:
不要忘记创建以下属性:
@property (strong, nonatomic) UINavigationController* navController;
@property (strong, nonatomic) SCViewController *mainViewController;
以及输入:
#import <FacebookSDK/FacebookSDK.h>
#import "SCLoginViewController.h"
#import "SCViewController.h"
#导入
#导入“SCLoginViewController.h”
#导入“SCViewController.h”
谢谢,它对我很有用!