2016-03-24 2 views
0

kann jemand mit dem Anmeldebildschirm helfen?wie man die Anwendung über die Facebook-Anmeldung zur Hauptansicht der Anwendung leitet

Ich habe eine mobile Anwendung entwickelt, die Facebook-Login verwendet, ich habe alles funktioniert, aber Problem, um den Hauptbildschirm anzuzeigen.

Die Facebook-Taste meldet einen Benutzer an und loggt sie aus, die ich wollte, aber die Facebook-Taste nimmt den Benutzer nicht zum Hauptbildschirm, wie mache ich das?

Ich habe Screenshot der Anwendung gemacht, die zwei Screenshot zeigen einen Benutzer können sich anmelden und abmelden und der dritte Screenshot ist die Homepage einer Anwendung, sobald der Benutzer angemeldet sind, will ich die Anwendung um den Benutzer auf die Hauptseite zu bringen.

der folgenden ist der Code für Facebook-Taste

#import <FBSDKCoreKit/FBSDKCoreKit.h> 
#import "FBSDKLoginKit/FBSDKLoginKit.h" 

@interface LoginViewController() 

@end 

@implementation LoginViewController 

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    FBSDKLoginButton *loginButton = [[FBSDKLoginButton alloc] init]; 
    loginButton.center = self.view.center; 
    [self.view addSubview:loginButton]; 
    // Do any additional setup after loading the view. 
} 

- (void)didReceiveMemoryWarning { 
    [super didReceiveMemoryWarning]; 
    // Dispose of any resources that can be recreated. 
} 


#pragma mark - Navigation 

// In a storyboard-based application, you will often want to do a little preparation before navigation 
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { 
    // Get the new view controller using [segue destinationViewController]. 
    // Pass the selected object to the new view controller. 
} 


@end 

enter image description here

enter image description here

Antwort

0

Statt Facebook-Taste verwenden Sie benutzerdefinierte Schaltfläche und fügen Sie Funktionalität verwenden, können Sie folgenden Code verwenden, können

@implementation ViewController 

- (void)viewDidLoad { 
[super viewDidLoad]; 



// Add a custom login button to your app 
    UIButton *myLoginButton=[UIButton buttonWithType:UIButtonTypeCustom]; 
    myLoginButton.backgroundColor=[UIColor darkGrayColor]; 
    myLoginButton.frame=CGRectMake(0,0,180,40); 
    myLoginButton.center = self.view.center; 
    [myLoginButton setTitle: @"My Login Button" forState: UIControlStateNormal]; 

    // Handle clicks on the button 
    [myLoginButton 
    addTarget:self 
    action:@selector(loginButtonClicked) forControlEvents:UIControlEventTouchUpInside]; 

    // Add the button to the view 
    [self.view addSubview:myLoginButton]; 
} 

// Once the button is clicked, show the login dialog 
-(void)loginButtonClicked 
{ 
    FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init]; 
    [login 
    logInWithReadPermissions: @[@"public_profile"] 
      fromViewController:self 
        handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) { 
    if (error) { 
     NSLog(@"Process error"); 
    } else if (result.isCancelled) { 
     NSLog(@"Cancelled"); 
    } else { 
 // here you can push or present controller 
 NSLog(@"Logged in"); 
    } 
    }]; 
} 

@end

0

Sie FBSDKLoginButtonDelegate für den Fang Ereignis verwenden können, wenn der Benutzer in Facebook loged wird.

- (void) loginButton:(FBSDKLoginButton *)loginButton didCompleteWithResult: (FBSDKLoginManagerLoginResult *)result error:(NSError *)error { 
if (result) { 
    [self perfromSegueWithIdentifier:@"YourSegueIdentifier" sender:self]; 
}} 

Ich denke, das kann Ihnen helfen.

Verwandte Themen