UITextField就像iPhone的消息应用程序

时间:2016-09-08 15:12:42

标签: ios swift uitextfield

如何在Swift中创建像iMessages这样的文本字段?当键盘出现时,我希望它从底部开始然后在键盘顶部上升。就像iMessages一样。

3 个答案:

答案 0 :(得分:0)

这是键盘管理和正确设置自动布局的问题。

处理键盘的一个选项是IQ Keyboard Manager

答案 1 :(得分:0)

如果您想手动创建它,可以将UITextField放入视图底部的故事板中,然后为底部,尾部和前缘提供约束值0(当然还有高度约束)。然后为底部约束创建一个IBOutlet,并在每次键盘显示或隐藏时更改该出口的值(请参阅this link

我已经在我的个人项目中试过这个解决方案而且效果很好:)

答案 2 :(得分:0)

您可以通过以下步骤来实现:

1)将UIScrollView作为子视图插入并将其约束设置为superview

2)将UITextField作为子视图插入到滚动视图中,并将其底部约束附加到滚动视图

3)实施UIKeyboardWillHideNotification和UIKeyboardWillShowNotification

4)将保存文本字段的底部约束设置为滚动视图

5)只需设置UIScrollView

,您就可以实际实现iMessage具有的优秀用户体验(当您向下滑动时交互式键盘关闭)
scrollView.keyboardDismissMode = UIScrollViewKeyboardDismissModeInteractive

PS:如果你要构建一个聊天应用程序,你可能想要实际使用UICollectionView或者看看这个真棒框架https://github.com/jessesquires/JSQMessagesViewController