关于ios7 navigationController中view的frame以及坐标点
今天做项目发现一个奇怪的问题;
在ios7下,
navigationController的viewframe为
{{0, 0}, {320, 568}}
导航不占位置了,这个清楚。
但是为毛view上面的子视图的y坐标计算是从64开始的呢?
譬如我设一个子视图的y坐标为0,它是从导航栏下面开始加载。
这就表示导航栏占了这个view的位置啊。
继续看:
发现,ios7下view的高度为568 屏幕大小为568;
但是:view的起始y坐标是64.坑爹啊。这样的话view会有一部分在窗口外,显示不完全。
这就导致计算最下面子视图的时间老是算错高度。
这是为毛。为毛。为毛啊。坑爹。
最后没有办法,只好接受这个现实。
计算最后一个子视图的时间多减去64的高度。
[self loadStarViewWithFrame:CGRectMake(0, [self nextViewFrameY:m_ListView.frame], 320, self.view.frame.size.height - [self nextViewFrameY:m_ListView.frame] - ((iOS7)?64:0))];