TextViews 在 ScrollView 中的位置不正确
TextViews not in correct position in ScrollView
我有两个 UITextView
盒子,它们在 UIView
中,在 UIScrollView
中。我的问题是,当我 运行 模拟器中的应用程序时, UITextView
框的位置低于我想要的,但是在 UITextView
框内单击后,关闭键盘和我的 textViewDidEndEditing
函数触发,它们设置回我最初希望它们所在的位置。在我的 textViewDidEndEditing
函数中,我确实设置了 UIScrollView
内容偏移量以返回到 (0,0 ) 所以我最初的解决方案是我需要立即将内容偏移设置为 (0,0),然后将我的两个 UITextView
框放在我想要的位置。
现在我首先尝试在 viewDidLoad
中执行此操作,但没有任何变化,因此我随后尝试在 viewDidAppear
中进行设置,但效果很好,但我的问题是视图出现后,您实际上看到 textview 框弹出到位,我不喜欢那样。我还检查了我的约束,它们都很好,因为我认为它们也可能导致问题。我不太确定在视图出现时没有实际看到 UITextView
弹出到位的情况下我能做些什么来让它工作。
这是视图控制器第一次出现时 UITextView
框的样子,没有 viewDidAppear 方法设置内容偏移量。
这就是我希望 UITextView
框的样子。
如有任何帮助,我们将不胜感激。谢谢
在您的 viewDidLoad 中将 viewController autoScollViewInsets 设置为 false:
override func viewDidLoad() {
super.viewDidLoad()
self.automaticallyAdjustsScrollViewInsets = false
}
如果您想了解更多详情,请查看此答案:
Explaining difference between automaticallyAdjustsScrollViewInsets, extendedLayoutIncludesOpaqueBars, edgesForExtendedLayout in iOS7
我有两个 UITextView
盒子,它们在 UIView
中,在 UIScrollView
中。我的问题是,当我 运行 模拟器中的应用程序时, UITextView
框的位置低于我想要的,但是在 UITextView
框内单击后,关闭键盘和我的 textViewDidEndEditing
函数触发,它们设置回我最初希望它们所在的位置。在我的 textViewDidEndEditing
函数中,我确实设置了 UIScrollView
内容偏移量以返回到 (0,0 ) 所以我最初的解决方案是我需要立即将内容偏移设置为 (0,0),然后将我的两个 UITextView
框放在我想要的位置。
现在我首先尝试在 viewDidLoad
中执行此操作,但没有任何变化,因此我随后尝试在 viewDidAppear
中进行设置,但效果很好,但我的问题是视图出现后,您实际上看到 textview 框弹出到位,我不喜欢那样。我还检查了我的约束,它们都很好,因为我认为它们也可能导致问题。我不太确定在视图出现时没有实际看到 UITextView
弹出到位的情况下我能做些什么来让它工作。
这是视图控制器第一次出现时 UITextView
框的样子,没有 viewDidAppear 方法设置内容偏移量。
这就是我希望 UITextView
框的样子。
如有任何帮助,我们将不胜感激。谢谢
在您的 viewDidLoad 中将 viewController autoScollViewInsets 设置为 false:
override func viewDidLoad() {
super.viewDidLoad()
self.automaticallyAdjustsScrollViewInsets = false
}
如果您想了解更多详情,请查看此答案: Explaining difference between automaticallyAdjustsScrollViewInsets, extendedLayoutIncludesOpaqueBars, edgesForExtendedLayout in iOS7