1

こんにちは私は奇妙な問題に直面しています。タイプのクラスがありNSObject、同じクラスで、Facebook や電子メール、Twitter で画像を共有したいと考えています。私はFBと電子メールを正常に実行しました。電子メールでは、[[[UIApplication sharedApplication] keyWindow] addSubview:mailer.view];メールコントローラーを提示モデルビューコントローラーのウィンドウインストレッドに表示するために使用し、破棄と同じように、スーパービューから削除を使用します。しかし、Twitterコントローラーで同じことをすると、Twitterコントローラーは数ミリ秒表示してから非表示にします。また、新しいビュー コントローラーをウィンドウに追加し、そのコントローラーをそのビュー コントローラーに表示しますが、出力は同じです。何がうまくいかないのかわからない。その上で助けてください。前もって感謝します。これは私にとって素晴らしいことです:)

編集済み

 if (_engine != nil) {
    _engine = nil;
    [_engine release];
}    
_engine = [[SA_OAuthTwitterEngine alloc] initOAuthWithDelegate: self];
_engine.consumerKey = kOAuthConsumerKey;
_engine.consumerSecret = kOAuthConsumerSecret;

UIViewController *controller = [SA_OAuthTwitterController controllerToEnterCredentialsWithTwitterEngine:_engine delegate: self];

if (controller) {
    NSLog(@"Sharing on Twitter on loading controller of twitter");
     [[UIApplication sharedApplication].keyWindow addSubview:controller.view];

}
else {
    NSLog(@"Sharing on Twitter in else condition");
    [self sharetoTwitter:screenImg];
} 

ShareToTwitter メソッド

- (void) sharetoTwitter:(UIImage *)img {
NSString *response = [_engine _uploadImage:img requestType:MGTwitterPublicTimelineRequest responseType:MGTwitterStatus]; 
NSLog(@"twitter post notification");
}

プレゼンテーション ビューの代わりにサブビューの追加を使用してビューを読み込みました。

4

1 に答える 1

1

これを試しましたか

UIWindow *window = [[UIApplication sharedApplication] keyWindow];
[window addSubView:controller.view];
[window makeKeyAndVisible];//important line dont forget to set this line
于 2012-12-07T12:03:43.500 に答える