2013-01-06 152 views
0

我试图在Facebook上iOS6的整合为一个iPad应用程序,并运行到一个问题:无法呈现视图 - 控制器(SLComposeViewController)

当下面的代码执行,屏幕渐变为黑色(比如当一个模式控制器出现),但没有任何反应。没有Facebook表单,什么都没有 - 甚至无法点击当前视图,就好像Facebook表单被隐藏或者其他东西一样。

任何想法为什么这可能会发生?我试图使用UINavigationController的根视图控制器和可见/顶部控制器来呈现表单,但都做同样的事情。

顺便说一下,下面的代码是在AppDelegate。该方法也被称为响应按钮点击。

谢谢, Nikos。

-(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; 
} 
+0

是否还有其他可能相关的代码可以发布?我只是复制/粘贴您的代码,并按预期执行。 –

回答

2

0x7FFFFFFF的是正确的 - 这个问题实际上是在别处:

我将嵌套视图的“根视图”,但并没有作为一个孩子添加其视图控制器也即

我在做:

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

没有

[self addChildViewController:_ViewControllers[tabId]]; 

它现在已经修复 - 谢谢你测试这个0x7fffffff。

+0

我遇到了和你一样的问题。这个答案也解决了我的问题。 – Senry