iphone - 设置位于导航/选项卡栏之间的 UIScrollView 框架

标签 iphone objective-c ios uiscrollview

正如标题所解释的,我正在 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/

相关文章:

iphone - 检索按修改日期 iOS 排序的联系人

iphone - UIImageWriteToSavedPhotosAlbum 导致 EXC_BAD_ACCESS

Iphone CLLocationCoordinate2D

iphone - 用于获取用户的 Facebook 好友性别以及 meet_sex 的 FQL 查询

ios - iOS 应用程序中的 "Expected Identifier"错误

ios - Swift UITableview 编辑文本框中的不同值

ios - 尝试创建 sqlite 数据库时出现错误 'Could not create table' IOS7

iphone - twitpic 与 iPhone 应用程序集成

ios - 快速检测不透明空间的两个节点之间接触的方法?

javascript - 使用 wkwebview 从 javascript 调用返回值的 swift 函数