无法显示View Controller(SLComposeViewController)

时间:2013-01-06 03:48:20

标签: ios ipad ios6 social-framework slcomposeviewcontroller

我正在尝试将iOS6上的Facebook集成到iPad应用程序中并遇到问题:

当执行以下代码时,屏幕渐渐变暗(就像出现模态控制器时),但没有任何反应。没有Facebook表,没有 - 甚至无法点击当前视图,好像Facebook表格被隐藏或者其他东西。

知道为什么会这样吗?我试图使用根视图控制器和UINavigationController的可见/顶部控制器来呈现工作表但所有工作都是一样的。

顺便说一下,下面的代码在AppDelegate中。此外,还会响应按钮单击调用该方法。

感谢, 尼科斯。

-(BOOL)socialPost:(UIImage*)image initialText:(NSString*)initialText url:(NSURL*)url
{
    if (![self canSocialPost])
        return NO;

    SLComposeViewController* SLComposerSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
    if (SLComposerSheet == nil)
        return NO;

    [SLComposerSheet setInitialText:initialText];
    [SLComposerSheet addImage:image];
    [SLComposerSheet addURL:url];
    [SLComposerSheet setCompletionHandler:^(SLComposeViewControllerResult result) {

        switch (result) {
            case SLComposeViewControllerResultCancelled:
                DLog(@"Social post Canceled");
                break;
            case SLComposeViewControllerResultDone:
                DLog(@"Social post Sucessful");
                break;

            default:
                break;
        }
    }];

    [[self window].rootViewController presentViewController:SLComposerSheet animated:YES completion:nil];
    return YES;
}

1 个答案:

答案 0 :(得分:2)

0x7fffffff是对的 - 问题实际上是在其他地方:

我在“根视图”中添加了嵌套视图,但是也没有将它们的视图控制器添加为子视图,即

我在做:

[_ContainerView addSubview:_ViewControllers[tabId].view];

[self addChildViewController:_ViewControllers[tabId]];

现在已修复 - 感谢您测试此0x7fffffff。