ios - 处理两个登录按钮

原文 标签 ios objective-c facebook-graph-api twitter

我的应用程序有一个登录屏幕,该屏幕使用Facebook登录名和Twitter登录名。我想要设置它,以便如果使用Facebook,则通过Facebook保存用户数据,如果使用Twitter,则使用Twitter信息。

目前,我只是尝试对个人资料图片单独执行if语句,但是它似乎并没有按照我想要的方式工作。用于Facebook登录。这是我的LoginViewController.m中的if语句的代码片段:

- (void)profilePictureChoose:(id)sender{
    if (sender == TWLoginButton){
        theprofilepicture = twitterprofPicture;
    }
    else if(sender == FBLoginButton){
        theprofilepicture = profPicture;
    }
}


我有与FBLoginButton属性链接的FB登录按钮,而Twitter的UIButton与TWLoginButton属性很相似。这两个属性保存在我的LoginViewController.has中,例如:

@property (weak, nonatomic) IBOutlet FBLoginView *FBLoginButton;
@property (strong, nonatomic) IBOutlet UIButton *TWLoginButton;


对于同一.h文件中的个人资料图片,我也具有以下两个属性:

@property (nonatomic)  UIImage *profPicture;
@property (nonatomic)  UIImage *twitterprofPicture;


使用profilepicture作为变量,我正使用它从任何控制器访问图片。

我不确定如何让if语句正确检查单击哪个按钮。如果有人可以帮助我,我将不胜感激

最佳答案

只给按钮加标签怎么办?

 FBLoginButton.tag = 1;
 TWLoginButton.tag = 2;


然后修改您的个人资料图片方法,如下所示:

- (void)profilePictureChoose:(id)sender{
    if (sender.tag == 1){
        //Facebook button
        theprofilepicture = profPicture;
    }
    else if(sender.tag == 2){
        //Twitter button
        theprofilepicture = twitterprofPicture;
    }
}


尝试一下,告诉我这是否对您有帮助,或结果如何。

关于ios - 处理两个登录按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31274268/

相关文章:

ios - Swift iOS 14 Firebase 警告——这个旧式函数定义之前没有原型(prototype)

ios - 我可以在单个应用程序iOS中使用核心数据和sqlite3吗

iOS "Local"推送通知

ios - Facebook AppLink和iOS:无法检索自定义深层链接URL查询参数

javascript - 仅在单击fb.share按钮后才调用FB.ui

ios - 通过带有用户位置的iOS Graph API将照片上传到自己的墙上

ios - 架构 armv7 : "_OBJC_CLASS_$_Crashlytics", 的 undefined symbol 引用自 : objc-class-ref in AppDelegate. o

ios - registerDefaults 未反射(reflect)在设置应用程序中

ios - 在popupView中的操作上更新主要viewController

iphone - 用于与 TCP 套接字对话的 Cocoa-Touch 框架?