iphone - 控制 iPhone 上的自动更正 View 位置

标签 iphone objective-c

有没有办法控制在 UITextField 中键入时弹出的自动更正 View 的位置?

默认情况下,它似乎总是出现在文本字段下方。但是在 Apple 的 SMS 等应用程序中,它有时会出现在文本字段上方。

对于在键盘正上方对齐的文本字段,自动更正功能会被键盘挡住而无法使用。

最佳答案

自动更正提示的位置由UITextInput协议(protocol)的firstRect...方法决定。不幸的是,UITextField 使用私有(private)类作为此协议(protocol)的委托(delegate),因此您不能对其进行子类化和覆盖。

但是,您可以通过自己绘制内容(如使用 CoreText)来实现自己的 UITextField 替换,实现自己的选择和放大镜处理,然后您将能够影响自动更正提示的位置。尽管它被设计为始终位于编辑文本下方,因此您基本上必须位于 firstRect ... 方法上。

长话短说:太麻烦了。

关于iphone - 控制 iPhone 上的自动更正 View 位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/911323/

相关文章:

c# - 使用 ASP.NET 3.5 C# 将 iPhone 重定向到另一个 URL

ios - 如何创建一个类以用于不同的项目?

ios - 访问位于设备屏幕中心的 UICollectionView 单元格中的 View

ios - iPhone - 快速解析 JSON 和更新标签

iphone - 当我进入编辑模式时,我可以阻止 UITableViewCell 缩小吗?

iphone - 使用按钮删除字符

iPhone 检测音量键按下。

iphone - 使用对象子类的属性

iphone - Read And then HTML 页面 +IOS

iphone - 有没有人创建一个垂直的 UIToolBar?或者某种带有 UIButtons 的垂直菜单?