我是iOS开发的新手,我已经多次搜索过Google,但没有找到解决问题的方法。
我有UITabBar
,有两个标签。第一个显示ScrollView
,其中包含UIViews
。{
如果我滚动内容(UIViews
),然后切换到第二个标签并更改回第一个标签,UIViews
更改其原点。
我正在使用NSLog()
在我UIViews
的{{1}}方法中显示viewDidAppear
的原点。
当视图第一次出现时,UIViewController
的原点是UIView
。更改选项卡并更改回第一个选项卡后,原点设置为(0,0)
,其中(0,-XXX)
为负数,并根据我最初滚动内容的程度而有所不同。
有人可以帮助我吗?
答案 0 :(得分:1)
这是UIScrollViews和autolayout系统的已知错误。如果您重置contentOffset
中的-viewWillAppear
,则可以解决此问题:
-(void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[self.scrollView setContentOffset:CGPointZero animated:NO];
}
答案 1 :(得分:0)
问题解决了。
我无法测试重置contentOffset的解决方案,因为我已经更改了界面。 我没有在故事板工具中添加UIViews,而是在代码中添加了dinamically。
这使我免受其他人的困扰......
无论如何,谢谢你们..