【问题标题】:UITextField cursor position change on orientation changeUITextField 光标位置随方向变化而变化
【发布时间】:2014-05-24 02:56:08
【问题描述】:

即使我改变了方向,iOS6 也能正常工作

如果我不改变方向,iOS7 可以正常工作

iOS7 改变方向时显示错误。*

我正在以编程方式创建UITextField,它与一起工作正常

对于 iOS7 及更高版本,当我更改方向时 UITextField 光标位置会发生变化。有什么问题?是iOS的bug吗?

你看到的圆角UITextField只有UITextField,我只是通过设置UITextField的角来圆角。

我设置了UITextField 的左右视图。同样在方向更改方法中,我什至没有触及UITextField

更新:

我发现UITextFieldUIFieldEditor子视图有contentOffset变化

- (void)resizeUITextFieldInsideUITextFieldWithOffset:(CGFloat)y {
    for(id subview in [txtSearch subviews]) {
        if([subview isKindOfClass:[UIScrollView class]]) {
            UIScrollView *textField = (UIScrollView *)subview;
            [textField setContentOffset:CGPointMake(0, y)];
        }
    }
}

我使用上面的代码在方向上修复它,但是当我再次输入时,同样的问题再次出现。

【问题讨论】:

    标签: ios uitextfield uiinterfaceorientation cursor-position


    【解决方案1】:

    更改 uiviwcontroller 的 为我解决了这个问题,随机错误。

    【讨论】:

    • 我可以确认,即使在问了这个问题 4 年后,这个解决方案仍然对我有用:D
    【解决方案2】:

    当您要轮换时尝试将其辞退,并在完成轮换后立即再次将其作为第一响应者。我实际上并不知道为什么会发生这种情况,但这应该尝试一下。 你有设置自动布局吗?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多