国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android實現系統狀態欄的隱藏和顯示功能

2019-10-21 21:46:08
字體:
來源:轉載
供稿:網友

尤其視頻類APP,需要實現切換到橫屏后,隱藏系統狀態欄,全屏顯示,以實現看更大畫面的視頻。當切換回豎屏后,又顯示狀態欄。那么如何實現呢?

網上流傳著很多種做法。比如:

1、在AndroidManifest.xml文件中修改theme為android:theme=”@android:style/Theme.NoTitleBar.Fullscreen”

2、在setContentView方法前執行如下代碼:

requestWindowFeature(Window.FEATURE_NO_TITLE)  getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);

3、通過View的setSystemUiVisibility方法

4、通過如下代碼實現狀態欄的隱藏和顯示:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN) //隱藏狀態欄 getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN) //顯示狀態欄

在我的項目中是要實現如下需求:在當前Activity中,切換到橫屏后,不能銷毀Activity再重新初始化,并且實現隱藏系統狀態欄,全屏顯示;當切換回豎屏后,又顯示狀態欄。另外,我不需要隱藏標題欄。

 因此,方法1、2均不適合我。方法3,我采用過,調用setSystemUiVisibility方法,該方法傳入的參數可以為:

1.View.SYSTEM_UI_FLAG_VISIBLE:顯示狀態欄,Activity不全屏顯示(恢復到有狀態的正常情況)。
2.View.INVISIBLE:隱藏狀態欄,同時Activity會伸展全屏顯示。
3.View.SYSTEM_UI_FLAG_FULLSCREEN:Activity全屏顯示,且狀態欄被隱藏覆蓋掉。
4.View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN:Activity全屏顯示,但狀態欄不會被隱藏覆蓋,狀態欄依然可見,Activity頂端布局部分會被狀態遮住。
5.View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION:效果同View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
6.View.SYSTEM_UI_LAYOUT_FLAGS:效果同View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
7.View.SYSTEM_UI_FLAG_HIDE_NAVIGATION:隱藏虛擬按鍵(導航欄)。有些手機會用虛擬按鍵來代替物理按鍵。
8.View.SYSTEM_UI_FLAG_LOW_PROFILE:狀態欄顯示處于低能顯示狀態(low profile模式),狀態欄上一些圖標顯示會被隱藏。

這里我需要傳入的是View.SYSTEM_UI_FLAG_FULLSCREEN,可是當我傳入該參數后,結果是:只是狀態欄消失了,但是位置還在。(測試手機:華為榮耀8 系統是基于Android 7.0的EMUI 5.0;三星galaxy s6 系統是Android 6.0)

最后,使用方法4,成功滿足需求。

總結

以上所述是小編給大家介紹的Android實現系統狀態欄的隱藏和顯示功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 容城县| 石嘴山市| 卫辉市| 张家界市| 静安区| 丹棱县| 南丹县| 三台县| 阜阳市| 南溪县| 镶黄旗| 安达市| 海林市| 磐石市| 方正县| 密山市| 扶风县| 申扎县| 徐闻县| 永胜县| 大方县| 洮南市| 临武县| 苏尼特左旗| 弥勒县| 婺源县| 西吉县| 柘荣县| 砀山县| 乌鲁木齐市| 汤原县| 罗平县| 通江县| 哈巴河县| 桑植县| 桐柏县| 门源| 安达市| 兴和县| 西丰县| 日照市|