14

iOS6 および iPhone 用にアプリを変更中です。新しいソーシャル フレームワークを使用して Twitter から投稿するときに、[キャンセル] を 2 回押して閉じる必要がある理由がわかりません。問題または修正?ボタンのコードはこちら。

- (IBAction)twitterPost:(id)sender
{
if([SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter])
{
    mySLComposerSheet = [[SLComposeViewController alloc] init];
    mySLComposerSheet = [SLComposeViewController   composeViewControllerForServiceType:SLServiceTypeTwitter];
    [mySLComposerSheet setInitialText:[NSString stringWithFormat:@"This is my tweet, hello!",mySLComposerSheet.serviceType]];
    [self presentViewController:mySLComposerSheet animated:YES completion:nil];
}
[mySLComposerSheet setCompletionHandler:^(SLComposeViewControllerResult result) {
    NSLog(@"dfsdf");
    switch (result) {
        case SLComposeViewControllerResultCancelled:
            break;
        case SLComposeViewControllerResultDone:
            break;
        default:
            break;
    }
}];


}
4

5 に答える 5

18

mySLComposerSheet を使用している場合、これはうまく機能します...

[mySLComposerSheet setCompletionHandler:^(SLComposeViewControllerResult result) {
[mySLComposerSheet dismissViewControllerAnimated:YES completion:nil];
于 2012-09-29T08:12:05.040 に答える
7

問題が見つかりました。これは、完了ハンドラーがTWTweetComposeViewControllerに追加された場合にのみ発生します。追加する場合は、必ず次の電話番号に電話してください。

[自己dismissModalViewControllerAnimated:YES];

于 2012-09-28T21:53:36.367 に答える
3

この仲間を試してみてください

   [mySLComposerSheet setCompletionHandler:^(SLComposeViewControllerResult result) {

        switch (result) {
            case SLComposeViewControllerResultCancelled:
                [self performSelector:@selector(showalert)];
                [mySLComposerSheet dismissViewControllerAnimated:YES completion:nil];
                break;
            case SLComposeViewControllerResultDone:
                [self performSelector:@selector(showalert1)];
                [mySLComposerSheet dismissViewControllerAnimated:YES completion:nil];
                break;

            default:
                break;


        }
    }];
于 2013-02-05T13:20:13.217 に答える
1

上記のコメントを回答として投稿する:

View Controller を提示する前に、completedHandler を設定しようとしましたか?

于 2012-09-27T11:16:02.990 に答える