我正在尝试在我的应用程序中实现Twitter共享。
当用户点击Twitter按钮时,调用以下方法:
TWTRComposer *composer = [[TWTRComposer alloc]init];
//here I configure the composer
if ([[Twitter sharedInstance].sessionStore hasLoggedInUsers]) {
[composer showFromViewController:self completion:nil];
} else {
[[Twitter sharedInstance] logInWithCompletion:^(TWTRSession *session, NSError *error) {
if (session) {
[composer showFromViewController:self completion:nil];
} else {
//error handling
}
}];
}现在我看到的是:当登录到用户中时,就会像预期的那样显示一个共享对话框。但是,当没有登录用户时,将显示一个对话框,允许用户登录(预期)。成功登录后(我有一个会话),就不会出现作曲家(不是预期的)。
再一次点击Twitter按钮,就会呈现出作曲家。
我的逻辑哪里出错了。如果您需要更多的信息、日志等,请告诉我。
发布于 2018-01-06 20:57:13
好吧,所以问题是,我想,
[composer showFromViewController:self completion:nil]; 在登录块中没有工作,因为'self‘被取消了。
为了解决这个问题,我现在介绍rootview控制器中的编写器,如下所示
[composer showFromViewController:rootController completion:nil];其中根控制器被定义为
MyViewController *rootController = (MyViewController*)[[(myAppDelegate*)[[UIApplication sharedApplication]delegate] window] rootViewController];https://stackoverflow.com/questions/48131143
复制相似问题