繁体   English   中英

在ios7中隐藏键盘

[英]hide keyboard in ios7

在我的应用程序中,我正在通过Twitter进行注册。 因此用户可以通过Twitter注册到我的应用中。 如果用户尚未在设置中设置帐户,我想显示Alertview。 因此用户可以导航到用于添加推特帐户的设置。 我也不想显示与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。 不同版本中的不同行为

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

SLComposeViewController *tweetSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter]

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

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

如果用户未在iOS 5.1以下的Facebook帐户中登录,则可以通过在应用程序中按警报对话框按钮转到设置-> Facebook。 但我认为Apple在iOS 6或更高版本中已删除了此功能。(与我有同样的问题)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM