[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(statusBarOrientationChange:) name:UIApplicationDidChangeStatusBarOrientationNotification object:nil]; - (void)statusBarOrientationChange:(NSNotification *)notification { UIInterfaceOrientation orientation = [[UIApplication sharedApplication] statusBarOrientation]; if (orientation == UIDeviceOrientationPortrait || orientation == UIDeviceOrientationPortraitUpsideDown) { //翻转为竖屏时 [self constrainsForPortrait]; [self drawKline]; [self drawLine]; [self drawMA5]; [self.tableView reloadData]; } if (orientation==UIDeviceOrientationLandscapeLeft || orientation == UIDeviceOrientationLandscapeRight) { [self constrsinsForLandscape]; [self drawKline]; [self drawLine]; [self drawMA5]; [self.tableView reloadData]; //考虑在里面重绘 } }
- (NSInteger)needDrawKlineCount { CGFloat width = 0; UIInterfaceOrientation orientation = [[UIApplication sharedApplication] statusBarOrientation]; if (orientation == UIDeviceOrientationPortrait || orientation == UIDeviceOrientationPortraitUpsideDown) { width = SCREEN_WIDTH-50; }else{ width = SCREEN_HEIGHT - 50; } _needDrawKlineCount = ceil(width/self.rowHeight); return _needDrawKlineCount; }
适配横竖屏的两种方式
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。