我已經將Facebook iOS SDK添加到我的xCode項目中,因此它允許用戶登錄。但是,一旦用戶登錄,在同一個視圖控制器中,他們的信息只是從他們的配置文件中更新並且登錄按鈕更改爲註銷。Facebook登錄後重定向到新的ViewController
但是,如果登錄成功,我希望將用戶重定向到DashboardViewController。我會怎麼做?
這裏是我的.m文件
#import "ViewController.h"
#import "FriendsViewController.h"
@interface ViewController()
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
self.delegate = [[UIApplication sharedApplication] delegate];
self.facebook = [self.delegate facebook];
self.facebook.delegate = self;
}
-(void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[self.loginButton setTitle:[self.facebook loginLabel] forState:UIControlStateNormal];
self.userProfileImage.profileID = [self.facebook userProfilePicture].profileID;
if (FBSession.activeSession.state == FBSessionStateCreatedTokenLoaded) {
// Yes, so just open the session.
[self.facebook login];
}
}
- (IBAction)performLogin:(id)sender
{
if([self.facebook status] == logOff)
{
[self.facebook login];
}
else
{
[self.facebook logout];
}
}
- (void)loginFacebookStatusUpdate
{
[self.loginButton setTitle:[self.facebook loginLabel] forState:UIControlStateNormal];
self.userProfileImage.profileID = [self.facebook userProfilePicture].profileID;
self.userProfileLabel.text = [self.facebook userProfileName];
self.userProfileBirth.text = [self.facebook userProfileBirthday];
}
- (void)getFriends:(id)sender
{
if([self.facebook isLogged])
{
NSError *error;
NSString *query = QUERY_USER_FRIENDS;
[self.facebook submitQueryFQL:query error:error];
}
}
- (void)fetchFQLQueryResult:(NSArray *)result error:(NSError *)error
{
self.friends = [NSArray arrayWithArray:result];
FriendsViewController *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"FriendsViewController"];
controller.friends = self.friends;
[self presentViewController:controller animated:YES completion:nil];
}
@end
您將重定向在登錄完成後調用的方法是簡單的答案。根據DashboardViewController的位置有多種不同的重定向方式。它是tabbarcontroller中的另一個選項卡嗎?它在UINavigationController棧中的某處嗎?這一切都取決於它與ViewController的關係。 – random
它是一個獨立視圖控制器,不在tabbar中,在StoryBoards中設置 – Omar
所以你只是想在用戶登錄後推送它?檢查了這一點http://stackoverflow.com/questions/13987026/ios-push-viewcontroller-from-code-and-storyboard – random