正如标题所解释的,我正在 View Controller 的 loadView 中以编程方式创建 UIScrollView,然后将其设置为 self.view。
_pagingScrollView = [[UIScrollView alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.view = _pagingScrollView;
如果我在 loadView 末尾检查 _pagingScrollView.frame,它等于
{{0,0},{320,480}}。
但是,如果我在 scrollViewDidScroll
委托(delegate)中检查相同的属性,它会切换到
{{0,0},{320,367}}
如何分配/初始化我的scrollView,使其高度从一开始就考虑到选项卡/导航栏,并给我367?我知道我可以简单地硬编码 367,但我想知道这里发生了什么以及为什么它以一个值开始然后发生变化。
最佳答案
为什么不创建具有已知边界的UIScrollView
_pagingScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0,0,320,387];
或者从UIScreen
边界中减去TabBar或NavBar的高度
关于iphone - 设置位于导航/选项卡栏之间的 UIScrollView 框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11973374/