2013-10-04 38 views
1

当我把我的应用程序放入iOS 7时,顶部单元格被我的导航栏覆盖。 我尝试使用edgesForExtendedLayout,但它只是给我一个iOS 6的应用程序的外观。 我想利用iOS 7中的半透明条,但edgesForExtendedLayout没有帮助。收藏查看iOS 7

有没有办法让这个单元格出现在导航栏的下方?

回答

1

你有几个选择。 UICollectionViewUIScrollView的子视图。

最简单的方法是将您的视图控制器变为UICollectionViewController的子类,该子类自动处理这些问题。更多信息here

如果不能,无论是在您的视图控制器设置automaticallyAdjustsScrollViewInsetsYES,或手动viewDidLayoutSubviews手动设置您的收藏观的contentInsets像这样:

- (void)viewWillLayoutSubviews 
{ 
    [super viewWillLayoutSubviews] 

    [_collectionView setContentInset:UIEdgeInsetMake(self.topLayoutGuide.length, 0, self.bottomLayoutGuide.length, 0)]; 
    [_collectionView setScrollIndicatorInsets: _collectionView.contentInset]; 
} 

使用UICollectionViewController的额外好处是useLayoutToLayoutNavigationTransitions支持,它可以在集合视图布局之间创建很酷的转换(例如,Apple的移动日历应用程序)。

+0

它的工作表示感谢,但它没有与self.topLayoutGuide.length一起工作,我只是把我的自我坐标。 – ElioMB

+0

和一个webView?它给这个代码的错误 – ElioMB

+1

对于webView:'webview.scrollView setContentInset:...' –