swift - 如何使用 google 登录 sdk 在 UIButton 而不是 UIView 中实现 google 登录?

标签 swift google-signin

friend 们,我是初学者级别的 ios swift 学习者。我一直在尝试在我的试用应用程序中进行谷歌登录。根据来自谷歌开发人员和其他教程的资源,我成功地使用 UIView 进行了登录。然后我试图在对我不起作用的 UIButton 的操作 block 中实现相同的代码。我想在 UIButton 中放置一个没有文本的自定义图像。我试过很多搜索引擎都没有提供明确的答案。请有人指导我

@IBOutlet weak var signInButton: GIDSignInButton!

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.

    GIDSignIn.sharedInstance().uiDelegate = self
    GIDSignIn.sharedInstance().clientID = self.myClientId
    GIDSignIn.sharedInstance().scopes.append("https://www.googleapis.com/auth/plus.login")
    GIDSignIn.sharedInstance().scopes.append("https://www.googleapis.com/auth/plus.me")

    GIDSignIn.sharedInstance().signInSilently()

}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.

}

` 这里的 signInButton outlet 是一个 UIView。 请告诉我如何将它实现到 UIButton 的 Touch-up 内部操作 block 中,或者只是一种更改 google sdk 返回的默认图标的方法。

注意:我使用的是 Google-Sign-In SDK 而不是 Google-Plus-Sign-In SDK,因为它已被谷歌弃用。桥接头、其他链接器标志、URL 模式和 GoogleSignIn 框架集成也没有错误。

请有人指导我。提前致谢。

最佳答案

在 Storyboard上或以编程方式创建您的按钮,然后在按钮操作上执行此操作。

@IBAction func googleSignInClicked(sender: UIButton) {
        GIDSignIn.sharedInstance().signIn()
}

实现委托(delegate)函数:

func signIn(signIn: GIDSignIn!, didSignInForUser user: GIDGoogleUser!, withError error: NSError!) {

}

获取响应。

关于swift - 如何使用 google 登录 sdk 在 UIButton 而不是 UIView 中实现 google 登录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33992189/

相关文章:

swift - 如何在 Swift 中以短格式获取当前日期

ios - Swift 中的 PFQueryTableViewController 使用 Cloud Code 函数

java - 错误 : Could not find com. google.gms :google-services:1. 0. 在 android studio 的 build.gradle 中添加 google 服务插件时

java - 当我使用 google 登录 api 时,以非零退出值 2 完成

Android 谷歌登录 : Multiple accounts at the same time + deferred sign-in upon failure

swift - iOS9 Storyboard自动布局

iOS 键盘 : textDocumentProxy. documentContextBeforeInput.isEmpty 意外返回 Nil(当它不应该返回时)

ios - 快速从响应中获取数组

android - 无法在 Google 登录时选择不同的帐户

Android Google 登录 : App Release Build Always Got "Error: 12500",,但调试版本未登录