【问题标题】:Canceling the scrolling animation when keyboard pops up on iphoneiphone弹出键盘时取消滚动动画
【发布时间】:2011-08-18 15:02:55
【问题描述】:

我有一个包含UITextFieldUIViewController。我将文本字段的inputAccessory 设置为我创建的UIToolbar。 我的 ViewController 的视图在 UIScrollView 里面(处理键盘弹出的事件)

之前:

现在,当键盘弹出时,突然我的 ScrollView 将它的 contentOffset.y 设置为 64 并带有动画,所以我的部分视图被推到了屏幕顶部:

之后:

这是由框架完成的,因为我使用的是 inputAccessoryView 的工具栏。 如果我要放下工具栏,则没有动画和内容偏移。

有谁知道如何禁用此自动动画和滚动?

谢谢!

【问题讨论】:

    标签: iphone ios cocoa-touch uiscrollview uitextfield


    【解决方案1】:

    您可以使用布尔标志和UIScrollViewDelegate 的组合来防止滚动发生。滚动视图委托可用于检测何时发生滚动、修改滚动类型以及简单地防止它发生,因此您最好的方法可能是研究检测键盘何时上升(通过通知或文本字段委托,以更合适的为准)并将其与滚动视图委托结合使用。

    【讨论】:

    • 如果内容偏移量改变了,还会调用委托方法吗?
    猜你喜欢
    • 1970-01-01
    • 2012-04-16
    • 1970-01-01
    • 1970-01-01
    • 2022-09-30
    • 1970-01-01
    • 2018-07-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多