【问题标题】:Removing keyboard on view transition在视图转换时移除键盘
【发布时间】:2011-03-11 23:09:41
【问题描述】:

当用户单击 UIButton 时,我试图退出键盘,这会触发新的内容视图(UIViewController 类型)。

这个“计算”按钮位于用户滚动输入的几个文本字段输入列表的末尾;在此视图中无需退出键盘。滚动视图还可以在激活键盘时调整大小。

但是,我注意到当继续下一个视图时,单击按钮,然后通过导航栏上的后退按钮返回到文本字段的此视图,键盘保持向上,并且此视图不再滚动附加区域被键盘占用。

我的想法是在视图更改时关闭键盘,因此当视图返回时,任何输入都会触发键盘通知并相应地调整滚动视图(这是有效的)。

非常感谢,

【问题讨论】:

    标签: iphone xcode


    【解决方案1】:

    这样的事情可能会让你朝着正确的方向前进:

    - (void)viewWillDisappear:(BOOL)animated {
        /*  Dismisses the keyboard whenever the view disappears
         */
    
        [self.view endEditing:YES];
        [super viewWillDisappear:animated];
    }
    

    您还可以将 endEditing 调用放入您提到的“计算”按钮的操作处理程序中。

    【讨论】:

    • 感谢您的回复。不幸的是,这些代码行使应用程序崩溃。我将这两行放在我的 -(IBAction)buttonPressed:(id)sender, 方法中。单击按钮后,模拟器崩溃(进入主屏幕)。我用 NO 来制作动画。我上面的方法实例化了下一个视图的类(如果 == nil)并将其推送到堆栈上:[self.navigationController pushViewController:self.equationOutputController animated:YES];
    • @Ernest:我忘记了最后的布尔参数。这是一个无法识别的选择器异常吗?
    • 解决了。你是个天才。非常感谢你。非常感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 2010-12-19
    • 1970-01-01
    • 1970-01-01
    • 2018-05-21
    • 2016-05-07
    • 2015-05-31
    • 1970-01-01
    相关资源
    最近更新 更多