我已经设置的限制,以文本视图上,如下图:添加约束的UITextView变化contentOffset
但你可以在模拟器上看到contentOffset正在艺术家名称标签文本视图不同。好像文本视图试图从顶部首先显示来自底部的文本,然后:
我想尝试解决此问题没有任何代码,但是我已经加入这个方法滚动文本视图回顶部:
- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
[self.theTextView scrollRectToVisible:CGRectMake(0, 0, 1, 1) animated:NO];
}
当调试代码和行[self.theTextView scrollRectToVisible:CGRectMake(0,0,1,1) animated:NO]
之前打印出文本视图文本视图的contentOffset是0,144.5:
(lldb) po self.theTextView
<UITextView: 0x7d26ac00; frame = (3 423; 153 90); text = 'Lorem ipsum dolor sit er ...'; clipsToBounds = YES; autoresize = RM+BM; gestureRecognizers = <NSArray: 0x7bbbdf30>; layer = <CALayer: 0x7bbbd540>; contentOffset: {0, 144.5}; contentSize: {153, 243}>
[self.theTextView scrollRectToVisible:CGRectMake(0,0,1,1) animated:NO]
后contentOffset是0,0:
(lldb) po self.theTextView
<UITextView: 0x7d26ac00; frame = (3 423; 153 90); text = 'Lorem ipsum dolor sit er ...'; clipsToBounds = YES; autoresize = RM+BM; gestureRecognizers = <NSArray: 0x7bbbdf30>; layer = <CALayer: 0x7bbbd540>; contentOffset: {0, 0}; contentSize: {153, 243}>
但我可以找出为什么限制带来一些问题内容偏移。以及为什么在开始文本被移动。在没有任何限制的情况下,文本视图将第一行显示为“Lorem ipsum”,但在约束条件下显示“nulla pariatur ...”,您可以在上面的图像中看到上面的行完全切断。
我有同样的问题。你解决了吗?我将textview的setContentOffset设置为0,0,但没有区别。请让我知道你是否已经解决了这个问题。 – Geekoder
@iOS嘿,对我来说这是一个老问题,所以我有一些技巧让它工作,但它对我来说是奇怪的。如您所知,UITextView是一个UIScrollView子项。因此,您可以使用所有需要的方法将内容滚动到顶部,就像您需要向上滚动滚动视图一样。我记得我已经创建了UITextView实例,并在viewDidLoad中以编程方式滚动了我的文本视图。但说实话,也许有另一个美丽的解决方案来避免这个文本转移问题。 –
谢谢亚历山大,我刚刚解决了它:) – Geekoder