您的位置:首页 > 移动开发 > Unity3D

Unity3D 去掉部分Android机型的底栏

2017-01-17 21:21 381 查看
参考 :
http://blog.csdn.net/liang_704959721/article/details/51377450
在用untiy开发应用时候发现一个问题,有几款手机有工具栏,不能实现全屏,



这个手机截图就是有工具栏的华为手机,我们怎么才能在自己的app中实现全屏。

用如下代码,拖到启动后的第一个场景的gameobject中即可:

[csharp] view
plain copy

 





public class HideAndroidButtons : MonoBehaviour  

{  

    #if UNITY_ANDROID && !UNITY_EDITOR  

    const int SYSTEM_UI_FLAG_IMMERSIVE_STICKY = 4096;  

    const int SYSTEM_UI_FLAG_HIDE_NAVIGATION = 2;  

    const int SYSTEM_UI_FLAG_FULLSCREEN = 4;  

      

    AndroidJavaObject decorView;  

      

    void Start()  

    {  

        AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");  

        AndroidJavaObject activity = jc.GetStatic<AndroidJavaObject>("currentActivity");  

        AndroidJavaObject window = activity.Call<AndroidJavaObject>("getWindow");  

        decorView = window.Call<AndroidJavaObject>("getDecorView");  

          

        TurnImmersiveModeOn();  

    }  

    void OnApplicationFocus(bool focusStatus) {  

        if(focusStatus){  

            TurnImmersiveModeOn();  

        }  

    }  

    void TurnImmersiveModeOn()  

    {  

        decorView.Call("setSystemUiVisibility", SYSTEM_UI_FLAG_FULLSCREEN | SYSTEM_UI_FLAG_HIDE_NAVIGATION | SYSTEM_UI_FLAG_IMMERSIVE_STICKY);  

    }  

    void OnDestroy()  

    {  

        decorView.Dispose();  

    }  

    #endif  

}  



全屏效果

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐