在我看来,我从代码的viewDidLoad
部分中的数据库中加载了一些文本内容。
这很好用,看起来很好,但是在运行应用程序时,滚动视图位于文本的最底部。
我在下面添加了此代码:
-(void)viewDidAppear:(BOOL)animated {
[super viewDidAppear: animated];
[self.descriptionTextV setContentOffset:CGPointZero animated:YES];
}
现在这会将滚动视图移动到文本的顶部,这是我想要的,但是要花几秒钟才能完成,而且会分散注意力。
我尝试过
[self.descriptionTextV setContentOffset:CGPointZero animated:YES];
通过动画滚动文字几秒钟。
[self.descriptionTextV setContentOffset:CGPointZero animated:NO];
将文本从底部“跳转”到顶部。
我尝试将setContentOffset
命令移至viewDidLoad
和viewWillAppear
部分,但随后根本不起作用。
有没有办法让我的文本在没有动画,滚动或跳跃的情况下从文本的顶部(而不是底部)开始?
我只希望文本从顶部开始,并且不希望用户在最终应用程序中看到视觉跳转。
答案 0 :(得分:0)
如果我对您的问题有正确的了解,则说明您正在使用UITextView
将文本加载到其中,这使这个问题真的很奇怪,因为UITextView
的默认行为是开始从顶部开始。在这种情况下,请确保没有在文本视图上执行其他任何操作。另外,您可能想看看加载数据需要花费多长时间。
答案 1 :(得分:0)
现在,通过将代码移至以下方法,我设法解决了这个问题:
-(void)viewDidLayoutSubviews {
[super viewDidLayoutSubviews];
[self.descriptionTextV setContentOffset:CGPointZero animated:NO];
}
这很好用!