[英]Getting text in scrollview to start at the top, not the bottom (Objective-C)
在我看来,我从代码的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
部分,但是然后根本不起作用。
有没有办法让我的文本在没有动画,滚动或跳跃的情况下从文本的顶部(而不是底部)开始?
我只希望文本从顶部开始,并且没有在最终应用程序中用户可以看到的视觉跳跃。
如果我对您的问题有正确的了解,那么您正在使用UITextView
将文本加载到其中,这真使这个问题很奇怪,因为UITextView
的默认行为是从顶部开始。 在这种情况下,请确保没有在文本视图上执行其他任何操作。 另外,您可能需要查看加载数据需要花费多长时间。
现在,我通过将代码移至以下方法来设法解决此问题:
-(void)viewDidLayoutSubviews {
[super viewDidLayoutSubviews];
[self.descriptionTextV setContentOffset:CGPointZero animated:NO];
}
这很棒!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.