iOS 开发,屏幕旋转、旋转屏幕collectionView cell 的自动布局问题
2015-03-21 14:34
2416 查看
开发过程中,为了视觉美感,有时候我们有禁止屏幕旋转的需求,如下操作
如果是在UINavigationController中装了很多UIViewController,那我们需要集成UINavitationController写一个自己的NavitationControlle,并且在里面加上如下方法。
返回YES表示支持横屏,返回NO表示不支持横屏,下面的例子表示全局除了CScanViewController这个界面可以横屏,其余界面一律不允许横屏
记得有一次做一个摄影论坛的时候,需要将照片全屏展示出来,需要根据照片的横竖旋转屏幕,考虑到cell得复用性,所以选择了collectionView,用masonry实现自动布局
// 注册通知,观察屏幕变化
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(changeFrame:) name:UIDeviceOrientationDidChangeNotification object:nil];
使用通知中心可以实现cell 的自动布局
很有用的心得。
如果是在UINavigationController中装了很多UIViewController,那我们需要集成UINavitationController写一个自己的NavitationControlle,并且在里面加上如下方法。
返回YES表示支持横屏,返回NO表示不支持横屏,下面的例子表示全局除了CScanViewController这个界面可以横屏,其余界面一律不允许横屏
- (BOOL)shouldAutorotate { id currentViewController = self.topViewController; if ([currentViewController isKindOfClass:[CScanViewController class]]) { return YES; } return NO; }
记得有一次做一个摄影论坛的时候,需要将照片全屏展示出来,需要根据照片的横竖旋转屏幕,考虑到cell得复用性,所以选择了collectionView,用masonry实现自动布局
// 注册通知,观察屏幕变化
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(changeFrame:) name:UIDeviceOrientationDidChangeNotification object:nil];
// 屏幕转动,改变cell的frame - (void)changeFrame:(NSNotification *)notification { _flow.itemSize = CGSizeMake(_collectionView.bounds.size.width, _collectionView.bounds.size.height); }
使用通知中心可以实现cell 的自动布局
很有用的心得。
相关文章推荐
- [iOS]技巧集锦:UICollectionView在旋转屏幕后Cell中的约束不起作用或自动布局失效
- Cocoa Touch 入门记——《精通 iOS 开发》学习心得(2) [iOS 7(Xcode 5)中的屏幕旋转与自动布局]
- iOS开发之UITableView点击头部控件图片旋转问题
- iOS 在viewDidLayoutSubviews自动布局crash问题
- iOS高级开发——CollectionView的动态增删cell及模型重构
- iOS开发-UI控件:CollectionView 获取指定位置的cell
- iOStableView 自动布局常见问题之页面滑动到最底时,下面多出44的距离!
- 【swift,oc】ios开发中巧用自动布局设置自定义cell的高度
- iOS UITableView中CELL添加计时器实现自动删除的问题
- iOS开发之 CollectionViewCell 无法加载
- iOS高级开发——CollectionView的cell长按事件实现
- iOSUITableView自动布局 ----动态cell
- ios6.0 UINavigationController、UITabBarController 支持屏幕自动旋转问题
- IOS Orientation, 想怎么转就怎么转~~~ 此博文主要针对IOS应用, 是屏幕旋转相关问题的一个总结. 主要内容有: IOS5,6,7不同版的适配. 强制旋转和自动旋转.
- iOS高级开发——CollectionView的cell中按钮的点击实现
- 该篇博客是在《iOS高级开发——CollectionView的动态增删cell及模型重构》的基础上继续进行开发的。在之前那篇博客中,我们实现了动态的增删cell,并且使用了模型Model进行重构
- IOS collectionView 布局问题
- IOS开发—UIScrollView自动布局
- iOS系统自带的 **UIAlertView** 以及 屏幕自动旋转的实现
- iOS开发中,单个页面屏幕旋转问题