iPhone 4.0 兼容性问题
我开发了一款iPhone应用程序,该应用程序在iPhone 3.0中运行良好。
当我与 4.0 进行比较时,它提供了一些已弃用的工作。
请找到下面的代码......
[[UIApplication sharedApplication] setStatusBarHidden:YES animated:NO];
注意:这在 3.0 中工作正常,但在 4.0 中给出警告
[[UIApplication sharedApplication] setStatusBarHidden:YES
withAnimation:UIStatusBarStyleDefault];
注意:这在 4.0 中工作正常,但在 3.0 中根本不起作用。
我的编码部分即将完成,我需要尽快发布此应用程序。
请帮我解决这个问题。
提前致谢。
I am developed one iPhone application which is working good in iphone 3.0.
While i am doing comparability with 4.0 it is giving some deprecated workings.
Please find the code below.....
[[UIApplication sharedApplication] setStatusBarHidden:YES animated:NO];
Note: this is working fine in 3.0 but giving warning in 4.0
[[UIApplication sharedApplication] setStatusBarHidden:YES
withAnimation:UIStatusBarStyleDefault];
Note: this is working fine in 4.0 but not at all working in 3.0.
My coding part almost completed, I need to publish this application ASAP.
Please help me out in this issue.
Thanks in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您有两个主要选项:
如果您在 4.0 中使用
setStatusBarHidden:animated:
,它将起作用。它已被弃用,这意味着您应该避免使用它,但它仍然可以工作 - 目前。在运行时检查哪一个是最佳选项:
You have two main options:
if you use
setStatusBarHidden:animated:
in 4.0, it will work. It's deprecated, which means you should avoid it, but it will still work — for now.Check at runtime which one is the best option:
处理此类问题的最流行方法是使用“instancesRespondToSelector”方法来检查您正在运行的版本。也可以使用预编译器指令,但内省是 Apple 推荐的方式。
因此,检查 UIApplication 对象是否响应 setStatusBarHidden:withAnimation 选择器,并执行 4.0 代码,否则调用 3.0 代码。
The poper way of handling such issues is using the ‘instancesRespondToSelector‘ method to check out which version you are running on. There is a possibility to use also a pre compiler directive, but introspection is the way Apple recommends.
So check if the UIApplication object responds to the setStatusBarHidden:withAnimation selector Nd execute the 4.0 code otherwise call the 3.0 code.