iOS7.0后隐藏状态栏(UIStatusBar)

  • 现象:

升级到iOS7后,UIStatusBar的出现导致现有UI界面乱掉了。

  • 原因:

由于写死了某些控件的绝对位置,原先隐藏UIStatusBar的代码没有在iOS7中起作用

  • 解决方法:

iOS7以下版本隐藏UIStatusBar的方法:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    [application setStatusBarHidden:YES];
    return YES;
}

  

升级到iOS7后的方法:

在基类中重载UIViewController.h中的这个方法

- (BOOL)prefersStatusBarHidden NS_AVAILABLE_IOS(7_0); // Defaults to NO

  

时间: 2024-10-22 17:06:49

iOS7.0后隐藏状态栏(UIStatusBar)的相关文章

iOS7.0后隐藏状态栏

iOS7中我们通过ViewController重载方法返回枚举值的方法来控制状态栏的隐藏和样式.setStatusBarHidden在iOS7中不起作用了. 需要在Info.plist配置文件中,增加键:UIViewControllerBasedStatusBarAppearance,并设置为YES,NO时下面的方法不起作用: 然后,在UIViewController子类中实现以下两个方法: - (BOOL)prefersStatusBarHidden { if (m_type == UNLOC

如何在iOS 7.0中隐藏状态栏

使用Cordova做了一个小项目,在原来iOS6的时候显示挺好,升级为iOS7后,每次App启动后都会显示状态栏,而且状态栏和App的标题栏重叠在一起,非常难看,因此需要将状态栏隐藏起来. 首先,考虑了采用Code的方式,在MainViewControoler.m中写下如下代码: 但是测试并不生效. 于是尝试修改Info.plist文件,因为每个工程Info.plist的位置可能不尽相同,最好在底部的搜索框中进行搜索.添加了下面两个属性后,在启动App,状态栏隐藏了. 参考资料: 1.iOS7

隐藏状态栏statusbar

在iOS7以后,隐藏状态栏只需要在根controller中添加 -(BOOL)prefersStatusBarHidden{ return YES; } 即可.但在有UINavigationController和UITabbarController时,在设置rootViewController后 //MainViewController为UITabbarController型 MainViewController *mainVC = [[MainViewController alloc]init

iOS7隐藏状态栏 status Bar

转自:http://blog.csdn.net/dqjyong/article/details/17896145 IOS7中,不仅应用的风格有一定的变化,状态栏变化比较大,我们可以看到UIVIEWCONTROLLER的状态栏与导航栏基本是一体的.因此UIVIEWCONTROLLER的HIDE/SHOW状态的方法也跟其他版本的不一样了. 在IOS7以前的版本,HIDE/SHOW是通过以下代码实现 [cpp] view plaincopy [[UIApplication sharedApplicat

IOS7 隐藏状态栏

- (UIStatusBarStyle)preferredStatusBarStyle { return UIStatusBarStyleLightContent; } // - (BOOL)prefersStatusBarHidden//for iOS7.0 { return YES; } 需要隐藏的时候调用 [self setNeedsStatusBarAppearanceUpdate]; 这种方法好处是控制单个视图的状态栏显示与隐藏

iOS7隐藏状态栏 statusBar

转:http://blog.csdn.net/dqjyong/article/details/17896145 评:通过这点变化,可以看出苹果倾向于使用delegate取代全局变量. IOS7中,不仅应用的风格有一定的变化,状态栏变化比较大,我们可以看到UIVIEWCONTROLLER的状态栏与导航栏基本是一体的.因此UIVIEWCONTROLLER的HIDE/SHOW状态的方法也跟其他版本的不一样了. 在IOS7以前的版本,HIDE/SHOW是通过以下代码实现 [cpp] view plain

隐藏状态栏后tableview自动滚动的问题

最近在开发过程中碰到一个很奇怪的问题,在将状态栏隐藏掉之后,页面上的tableView会自动向上滚20个像素. 状态如下: 这是因为在iOS7.0之后,系统会自动调整scrollView的layout 和 contentInsets .从而使其自动地适应iOS7之后那种整个屏幕都可以放入自定义控件的方法.而我们大多数在开发过程中并不希望收到系统自动的影响而是完全掌握开发过程中的每一个细节.还有一个愿意是因为目前我们大多数的应用都是要向下适配到iOS6,而在6中并未提供这样的特性,所以在代码级别依

IOS7 隐藏状态栏 (电池栏)

电池状态栏. //方法一(代码设置): 现在ios7已经更改为透明,并且不占用屏幕高度.其中隐藏及显示的方法如下: 在uiviewcontroller的子类下,调用: if ([self respondsToSelector:@selector(setNeedsStatusBarAppearanceUpdate)]) { // iOS 7 [self prefersStatusBarHidden]; [self performSelector:@selector(setNeedsStatusBa

Android全屏(包含3种隐藏顶部状态栏及标题栏和一种隐藏Android 4.0平板底部状态栏的方法)

方法一 public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 隐藏标题栏 requestWindowFeature(Window.FEATURE_NO_TITLE); // 隐藏状态栏 getWindow().setFlags(WindowManager.La