1

私は問題があります。私はこの関数を呼び出します:

- (void)createComposeViewController:(NSString *)serviceType {
__block SLComposeViewController *controller = [SLComposeViewController composeViewControllerForServiceType:serviceType];

if (controller == nil) return;

[controller setInitialText:@"I like appname!")];
[controller addURL:[NSURL URLWithString:@"http://appstore.com/appname"]];
[controller addImage:[UIImage imageNamed:@"Icon.png"]];
controller.completionHandler = ^(SLComposeViewControllerResult result) {
if (result == SLComposeViewControllerResultCancelled) {
NSLog(@"Cancelled");
} else {
NSLog(@"send message to social");
}

[controller dismissViewControllerAnimated:YES completion:nil];
};

[[CCDirector sharedDirector] presentViewController:controller animated:YES completion:nil];
}

そして、それは正しく機能しています。しかし、メッセージのフィールドを閉じずにアプリケーションを最小化しないと、CCGLView.m の 275 行目に EXC_BAD_ACCESS が表示されます。

if(![context_ presentRenderbuffer:GL_RENDERBUFFER])

どうしてか分かりません。このエラーは iPad 3 で発生します。他のデバイスはありません。

そして、エミュレーターでこれを取得します:

<Error>: CGImageCreate: invalid image size: 0 x 0.

しかし、アプリケーションは機能しています。

GKLeaderboardViewController など、他の ViewController でも同じことが起こっています。

新しいプロジェクトを作成すると、すべて同じ条件でエラーなしで動作します。私は何が間違っていますか?

cocos2d v2.1-beta4 IOS6.1

4

1 に答える 1

0

ディレクターの代わりにアプリ デリゲートを使用する

SLComposeViewController*fvc = [SLComposeViewController
                                       composeViewControllerForServiceType:SLServiceTypeFacebook];
        [fvc setInitialText:desc];
        [fvc addImage:[UIImage imageNamed:imgPath]];
        [fvc setCompletionHandler:^(SLComposeViewControllerResult result) {
            [myDelegate.navController dismissModalViewControllerAnimated:YES];

        }];

        AppController * myDelegate = (((AppController*) [UIApplication sharedApplication].delegate));

        [myDelegate.navController presentViewController:fvc animated:YES completion:^{
        }];
于 2013-02-14T11:18:17.360 に答える