横竖屏事件响应(viewWillLayoutSubviews和通知)两种方式
来源:互联网 发布:破解qq悄悄话的软件 编辑:程序博客网 时间:2024/05/17 05:58
版权声明:本文为博主原创文章,未经博主允许不得转载。
最近搞横竖屏,获得一些心得,特记录下来。
做横竖屏最重要的是确定横竖屏响应的接口。目前我知道的有两种方式 :
1.使用通知。
- (void)viewDidLoad
{
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(_orientationDidChange:)name:UIDeviceOrientationDidChangeNotification object:nil];
}
- (void)dealloc {
[[NSNotificationCenter defaultCenter] removeObserver:self name:UIDeviceOrientationDidChangeNotificationobject:nil];
}-(void)_orientationDidChange:(NSNotification*)notify
{
[self _shouldRotateToOrientation:(UIDeviceOrientation)[UIApplication sharedApplication].statusBarOrientation];
}
-(void)_shouldRotateToOrientation:(UIDeviceOrientation)orientation {
if (orientation == UIDeviceOrientationPortrait ||orientation == UIDeviceOrientationPortraitUpsideDown) {
// 竖屏
}
else {
// 横屏
}
}
上述代码,一看就明白。
2.使用 viewWillLayoutSubviews
测试发现横竖屏切换的时候,系统会响应一些函数,其中 viewWillLayoutSubviews就是之一。
- (void)viewWillLayoutSubviews
{
[self _shouldRotateToOrientation:(UIDeviceOrientation)[UIApplication sharedApplication].statusBarOrientation];
}
通过上述一个函数就知道横竖屏切换的接口了。注意:
viewWillLayoutSubviews只能用在ViewController里面,在view里面没有响应。
- 横竖屏事件响应(viewWillLayoutSubviews和通知)两种方式
- 横竖屏事件响应(viewWillLayoutSubviews和通知)两种方式
- 横竖屏事件响应(viewWillLayoutSubviews和通知)两种方式
- 横竖屏事件响应(viewWillLayoutSubviews和通知)两种方式
- 横竖屏事件响应(viewWillLayoutSubviews和通知)两种方式
- 横竖屏自动响应viewWillLayoutSubviews
- Android横竖屏改变布局的常见两种方式
- Android 横竖屏随意切换的两种方式
- 【Android】控件和基本事件响应的三种方式
- 【Android】控件和基本事件响应的三种方式
- Android Intent和按钮响应事件的几种方式
- 自定义弹框一(PopupWindow实现) 响应两种点击事件
- 横竖屏切换和contentView的三种显示方式
- Android应用横竖屏切换的两种方式,从表现上看最大的区别
- android通知栏响应事件
- viewWillLayoutSubviews
- iOS 横竖屏监听通知
- android响应事件(按钮)的三种方式
- input内的文件水平剧中和垂直居中
- Restrictions的部分用法
- Implement Trie (Prefix Tree)
- [Java] 集合类克隆方法与内部排序
- dom、sax、pull解析的优缺点
- 横竖屏事件响应(viewWillLayoutSubviews和通知)两种方式
- nginx优化 突破十万并发
- online_judge_1093
- QT显示中文
- 内核中断,异常,抢占总结篇
- solr服务器的搭建 for windows
- python aerospike client 实现CAS更新操作
- maven中snapshot快照库和release发布库的区别和作用
- 防外链