在我的应用程序中,我正在通过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。不同版本中的不同行为
答案 0 :(得分:3)
是的我解决了这个问题。见下面的代码
SLComposeViewController *tweetSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter]
[self presentViewController:tweetSheet animated:NO completion:^{
[self dismissModalViewControllerAnimated:NO];
}];
用于显示带有设置选项的alertView我提供了tweetSheet,如果用户尚未添加任何帐户,则显示alertView With settings选项。因为它是alertView,它不会进入completion
(completion:^{ })
区域,直到我们按下alertView的任何按钮。一旦按下任何按钮,它就会进入completion
区域&它驳回了tweetSheet,这就是它没有显示键盘的原因。
答案 1 :(得分:0)
如果用户未在iOS 5.1下登录Facebook帐户,您可以通过在应用中按下警告对话框按钮来设置 - > Facebook。但我认为Apple在iOS 6或更高版本中已删除此功能。(与我同样的问题)