iOS 7的Twitter集成,cocos2d v3

iOS 7的Twitter集成,cocos2d v3,ios,objective-c,xcode,twitter,cocos2d-iphone,Ios,Objective C,Xcode,Twitter,Cocos2d Iphone,我在网上查阅了很多教程,对于Facebook/Twitter的集成,我总是被同样的错误所阻止 从下面的代码(教程中使用的代码)中,我得到了错误“MainScene”的no visible@interface声明选择器“presentViewController:animated:completion:”。在这上面花了几个小时,我真的不明白发生了什么。以下是相关代码: if ([SLComposeViewController isAvailableForServiceType:SLServiceT

我在网上查阅了很多教程,对于Facebook/Twitter的集成,我总是被同样的错误所阻止

从下面的代码(教程中使用的代码)中,我得到了错误“MainScene”的no visible@interface声明选择器“presentViewController:animated:completion:”。在这上面花了几个小时,我真的不明白发生了什么。以下是相关代码:

if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter])
{
    SLComposeViewController *tweetSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter];
    [tweetSheet setInitialText:@"Tweeting from my own app! :)"];
    [self presentViewController:tweetSheet animated:YES completion:nil];
} 

这种情况在某些社会框架下没有任何结论。看起来像是语法错误。如果可以,请提供更多代码。

Cocos2d-v3应用程序需要了解的内容
  • UIViewController
    对象定义了
    presentViewController
    接口
  • CCScene
    对象不是
    UIViewController
    对象
  • 您的
    CCScene
    对象位于
    rootViewController
    中的一个层中,该层永远不会更改
想象一下吧

rootViewController->Cocos2d->[主场景]或[暂停场景]或[游戏场景]

这对你意味着什么 您必须访问此
rootViewController
,并出示您的推文表或其他
UIViewController
。以下是您在任何iOS应用程序中访问根视图控制器的方式:

UIViewController *rootViewController = [UIApplication sharedApplication].keyWindow.rootViewController;
你的问题代码 Cocos背后的人预见到了这个用例,并简要介绍了这个命令。以下是您应该如何在Cocos应用程序中显示ViewController:

[[CCDirector sharedDirector] presentModalViewController:yourTwitterVC animated:YES];
希望你现在对这个问题有更好的了解