【发布时间】:2018-05-02 00:25:02
【问题描述】:
我熟悉如何在键盘出现、消失或更改时通过通知获取实际键盘高度。但是我想在屏幕底部有一个聊天视图,上面有一些按钮。这些按钮应尽可能低(出于可用性原因),但不应移动以不被键盘和聊天文本字段覆盖。
换句话说,在最高键盘高度+文本输入高度的高度处应该有一条不可见的线,并且按钮的底部应该与该线对齐。
挑战在于人们使用不同高度的不同键盘,具体取决于语言、设备、iOS 版本和设置。我可以添加一些神奇的常量,并希望 iOS 版本之间的变化不会太大,但我宁愿以某种方式轮询操作系统来给我这些信息,所以一切都会在 iPhone X、iPhone SE、iPad 之间自动更新风景肖像等等。
如何在键盘实际显示之前为其保留足够的空间?
【问题讨论】:
-
您说您知道如何获得键盘高度,那么对于具有不同键盘高度的用户来说,挑战在哪里?如果你知道高度,为什么还需要一个魔法常数?如果您不希望按钮随键盘移动,只需将它们移动到屏幕顶部即可。这是一个设计问题,而不是编程问题。
-
这是您要求的吗? stackoverflow.com/a/35689635/5496433
-
@BallpointBen 按钮始终可见,不仅在您使用文本输入时。挑战在于让它们尽可能靠近您的拇指,同时不为键盘移动它们或让它们被键盘覆盖