0

在我的应用程序中,我正在通过 Twitter 进行注册。因此用户可以通过 twitter 注册到我的应用程序。如果用户没有在设置中设置帐户,我想显示 Alertview。因此用户可以导航到添加 Twitter 帐户的设置。我也不想显示与SLComposeViewController. 为此我使用了下面的代码

SLComposeViewController *tweetSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter];
    tweetSheet.view.hidden=TRUE;

    [self presentViewController:tweetSheet animated:NO completion:^{
        [tweetSheet.view endEditing:YES];

    }];

在 ios6 中,上面的代码隐藏了SLComposeViewController& 键盘并显示用户没有 twitter 帐户的 alertView。&点击alertView的设置按钮后,它会导航到手机中的设置。

但是在 iOS7 中,上面的代码显示了键盘,点击设置按钮后没有导航到设置。

所以我的问题是 - 为什么会发生这种情况。它适用于ios6,但不适用于ios7。不同版本中的不同行为

4

2 回答 2

3

是的,我解决了这个问题。见下面的代码

SLComposeViewController *tweetSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter]

       [self presentViewController:tweetSheet animated:NO completion:^{
           [self dismissModalViewControllerAnimated:NO];
    }];

为了显示带有设置选项的 alertView,我提供了 tweetSheet,如果用户尚未添加任何帐户,则它显示带有设置选项的 alertView。completion (completion:^{ })因为它是alertView,所以在我们按下alertView的任何按钮之前它不会进入区域。一旦你按下任何按钮,它就会进入completion区域并关闭 tweetSheet,这就是它不显示键盘的原因。

于 2013-10-30T11:22:51.893 回答
0

You can go to setting ->Facebook via pressing alert dialog button in your app if user is not logged in Facebook account below iOS 5.1. but i think this functionality has been removed by Apple in iOS 6 or more version.(same problem with me )

于 2013-10-29T09:03:40.380 回答