【发布时间】:2015-02-18 01:35:28
【问题描述】:
我正在尝试设计(“正确设计”,而不是“破解”)自定义警报视图。视图应该附加到键盘的顶部;使用键盘向上滑动(如果有警报)或隐藏(如果没有警报)。
视图应该始终“粘”在键盘上……包括,例如,当键盘隐藏时。在这种情况下,视图应该与键盘一起向下滑动,看不见。
以下是我尝试实现的示例(带有主动警报):
我原本想过子类化 UIAlertView,但看起来不推荐。而且,经过一番试验,这显然是一项棘手的任务。我有一个显示的警报,但是,它变成了与键盘保持同步的问题,而且我还没有找到一种方法让它“跟踪”键盘的运动......不顺利。
有什么想法吗?
【问题讨论】:
-
我最近经历了类似的事情......我的解决方案是使用一个简单的 UIView(用于警报)并注册
UIKeyboardWillHideNotification和UIKeyboardWillShowNotification,其中 UIView(用于警报)是向上/向下滑动(帧的原点变化),动画与键盘运动相关联。你试过类似的东西吗?通知为您提供所需的一切(键盘高度、动画持续时间等) -
设置为附件视图。
-
大卫,是的——我正在做类似的事情,但今天早些时候偶然发现了 inputAccessoryView。我实际上已经实现了一个基本的 UIView 基本上做了你所描述的......但有小故障。 inputAccessoryView 效果很好,iOS 处理了大部分(全部?)动画。几乎我只需要注意绘制一个带有警报的矩形,或者隐藏它(视情况而定)。
-
@Zac:我不知道accessoryView,我也试试,谢谢!
标签: ios swift uikit uialertview