这部分的实现应该非常简单(但不是)

我实现了OAuthIODelegate到LoginViewController中,但是问题是当我运行以下代码时:

OAuthIOModal *oauthioModal = [[OAuthIOModal alloc] initWithKey:@"the_key" delegate:self];
[oauthioModal showWithProvider:@"facebook"];

然后我得到这个:

警告:尝试提供OAuthIOModal:0x14ecc8e0于
MenuViewController:0x14eb8d80,其视图不在窗口中
等级!

问题是我什至没有在MenuViewController上调用它。

为了进行测试,我先从MenuViewController调用LoginViewController,然后在按下按钮时从登录控制器调用LoginViewController,运行上面的代码。

我试图找到一种解决方案,但是没有弹出任何具体说明。

帮助将不胜感激。

n

最佳答案

MenuViewController设置为您的根视图控制器,但尚未加载。我猜想您此时正在视图之间移动。

尝试将代码放入MenuViewController.m:viewDidLoad中。您可能需要一些方法来转移其他业务逻辑,但是从本质上讲,在视图加载之前,您将无法显示弹出窗口。

- (void)viewDidLoad {
    [super viewDidLoad];
    OAuthIOModal *oauthioModal = [[OAuthIOModal alloc] initWithKey:@"the_key" delegate:self];
    [oauthioModal showWithProvider:@"facebook"];
}

08-18 03:54