gpt4 book ai didi

ios - Twitter登录按钮出现问题

转载 作者:行者123 更新时间:2023-12-01 19:46:26 25 4
gpt4 key购买 nike

在我的iOS应用(Objective-C)中,我使用TWTRLogInButton对用户进行身份验证。

按照说明,我首先将其放入我的 viewcontroller.m的 viewDidLoad 中。

TWTRLogInButton *logInButton = [TWTRLogInButton buttonWithLogInCompletion:^(TWTRSession *session, NSError *error) {
///
}];
logInButton.center = self.view.center;
[self.view addSubview:logInButton];

有了所有其他配置,一切正常。

但是,为了更好地控制Twitter登录按钮的位置和大小,我想通过界面生成器添加该按钮。

因此,在我的 viewcontroller.h 中,我添加了:
@property (retain, nonatomic) IBOutlet TWTRLogInButton *twitterButton;

在我的.xib上(是的,我知道)我添加了一个UIView,将其分类为“TWTRLogInButton”,并将其连接到“twitterButton”

然后,在我的 viewcontroller.m 中,在viewDidLoad中,
 self.twitterButton = [TWTRLogInButton buttonWithLogInCompletion:^(TWTRSession *session, NSError *error) {
///
}];

但是以某种方式,当我点击按钮时,在关闭“Twitter对话框”后,不会调用完成。

是什么赋予了?

最佳答案

它在Twitter Community forum中进行了解释并且很有意义(没有对其进行测试),但是我将其发布在此处以在StackOverflow上获得答案。

这样声明您的按钮,并且该按钮已存在并连接在Storyboard / Xib中:

@property (retain, nonatomic) IBOutlet TWTRLogInButton *twitterButton;

+(instancetype)buttonWithLogInCompletion:(TWTRLogInCompletion)completiondoc(存在 +(instancetype))和文档说起(我将重要部分加粗了)

返回 一个新的登录按钮,在点击该按钮时启动Twitter登录
并在登录成功或失败时调用完成。

因此,当您这样做时:
self.twitterButton = [TWTRLogInButton buttonWithLogInCompletion:^(TWTRSession *session, NSError *error) { 
//Code for completionHandler
}];

您正在创建一个全新的对象,并且覆盖了先前连接到xib / storyboard的对象,从而使代码与先前在xib / storyboard中设置的对象“失去了联系”。

如何修复它,按钮有一个要设置的属性,即完成处理程序。
@property (nonatomic, copy) TWTRLogInCompletion logInCompletion

因此设置:
[self.twitterButton setLogInCompletion = ^(TWTRSession *session, NSError *error){
//Code for completionHandler
}];

关于ios - Twitter登录按钮出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48283513/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com