zoukankan      html  css  js  c++  java
  • 使用Xamarin开发iOS7应用时隐藏StatusBar方法

    在iOS7之前如果需要隐藏StatusBar,比较简单,直接在AppDelegate.cs中使用如下代码就可以进行隐藏:

    UIApplication.SharedApplication.StatusBarHidden = true;

    但这段代码在iOS7中却无法实现StatusBar隐藏,而是将StatusBar透明显示。经过在Xamarin网站查询向导,具体方法是为UIViewController增加一个重写方法,

    public override bool PrefersStatusBarHidden ()
    {
        return true;
    }

    这样就可以进行隐藏了,完成后效果如下图所示:

    在实际代码编写的时候为了方便起见,可以建立一个ViewController的类,继承UIViewController类,增加StatusBarHidder的方法,以后再新增UIViewController的时候都继承ViewController即可。具体代码如下:

    using System;
    using System.Drawing;
    
    using MonoTouch.CoreFoundation;
    using MonoTouch.UIKit;
    using MonoTouch.Foundation;
    
    namespace Com.imStudio.iOSLibrarys
    {
        [Register("ViewController")]
        public class ViewController : UIViewController
        {
            public Boolean StatusBarHidder { get; set; }
    
            public ViewController()
            {
            }
    
            public override void DidReceiveMemoryWarning()
            {
                // Releases the view if it doesn't have a superview.
                base.DidReceiveMemoryWarning();
    
                // Release any cached data, images, etc that aren't in use.
            }
    
            public override bool PrefersStatusBarHidden()
            {
                return this.StatusBarHidder;
            }
    
            public override void ViewDidLoad()
            {
                base.ViewDidLoad();
    
                // Perform any additional setup after loading the view
            }
        }
    }

    以上是我的解决办法,欢迎和大家多多沟通学习,如有任何改进意见和建议,我的QQ是1243672,欢迎联系哦。

  • 相关阅读:
    上下伸展的JS菜单
    [ZZ]Debug VBScript with Visual Studio
    面试总结之杂题
    [ZZ]9 Confusing Naming Conventions for Beginners
    Robocopy
    [ZZ]什么是Alpha,Beta,RC,RTM,CTP版
    使用位运算交换两个值,不用临时变量
    学习笔记之编程之美微软技术面试心得(一)
    C#中如何获取系统环境变量
    学习笔记之SQL教程 from W3School
  • 原文地址:https://www.cnblogs.com/songhaipeng/p/3388469.html
Copyright © 2011-2022 走看看