横向模式下的 iPhone UITextField

标签 iphone cocoa touch

如果处于横向模式,如何使键盘(用于编辑 UITextField)以正确的方向出现?

我正在以横向模式使用 openGL 制作游戏。

当用户输入名字以获得高分时,我添加了一个 UITextField。我可以旋转 UITextField (使用 CGAffineTransformMakeRotation 谢谢),但是当用户点击 TextField 时,键盘会以纵向模式弹出。不是风景。

我知道键盘可以在横向模式下出现(在 Safari 中也可以),那么我该如何设置它?

最佳答案

您是否以横向模式启动应用程序,或者是否使用转换?听起来你正在使用转换 - 如果你只是在横向运行所有内容,它可能会让你的生活更轻松,尽管我根本没有使用过 OGL,所以不知道那里是否存在复杂性。

您需要使用 UIApplication setStatusBarOrientation (是的,即使您的状态栏是隐藏的)。这也控制键盘的方向。

例如在启动应用程序时执行此操作(不是在显示键盘之前,您需要在生效之前将控制权返回给操作系统,IIRC)。

[[UIApplication sharedApplication] setStatusBarOrientation:UIDeviceOrientationLandscapeRight animated:NO]

关于横向模式下的 iPhone UITextField,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/806529/

相关文章:

iphone - MPMediaItemPropertyPersistentID 的 NSNumber 到 NSString 并再次返回

ios - 在 ios 7 中,是否按比例给予每个约束都会造成 UIView 失真?

iphone - 如何重构一个核心数据模型,使两个现有实体继承一个新的抽象实体

macos - 如何从货币代码中获取 "locale"?

iphone - 检测 iPad 键盘隐藏与外部键盘连接?

iphone - 获取包含 UITouch 的所有点

swift macOS : How to paste into another application

android - 在屏幕上的每次触摸上创建按钮

Android:触摸时关闭对话窗口

java - 为什么 event.getActionMasked 会切换到这些情况,而 event.getAction 不会