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

首頁 > 學院 > 開發設計 > 正文

管理系統UI之一:淡化System Bar(Dimming the System Bars)

2019-11-09 15:10:49
字體:
來源:轉載
供稿:網友

這篇文章討論如何在4.0以及以上版本中淡化Android的system bar(status bar和navigation bar)。在4.0之前的版本沒有這樣的功能。

用此文的方法并不會重新分配Ui的大小,只是status bar和navigation bar的相關圖標會被弱化,比如navigation bar的幾個虛擬鍵會弱化成很細微的小點。一旦你再次點擊 status bar和navigation bar 的所在區域,他們就會再次完全顯現。這種方式的好處是status bar和navigation bar并沒有消失,仍然在界面上,但是它們的細節變暗了、模糊了。

在4.0以上的版本,你可以使用SYSTEM_UI_FLAG_LOW_PROFILE 標志來使 status bar和navigation bar變暗。雖然下面是調用decorViewsetSystemUiVisibility方法,但是你完全可以調用任何一個可見view的setSystemUiVisibility方法,效果是一樣的。

1234// This example uses decor view, but you can use any visible view.View decorView = getActivity().getWindow().getDecorView();int uiOptions = View.SYSTEM_UI_FLAG_LOW_PROFILE;decorView.setSystemUiVisibility(uiOptions);

一旦用戶這這個時候觸摸了status bar和navigation bar 的所在區域, 系統便清除掉了SYSTEM_UI_FLAG_LOW_PROFILE,status bar和navigation bar淡化效果將消失,如果你想再次淡化status bar和navigation bar,需要再次如上設置。

下面這張圖演示了gallery中的一張圖片在顯示時, navigation bar被淡化的情景(注意status bar沒有顯示并不是淡化了,而是gallery應用直接隱藏了它),你可以看到右側的 navigation bar 已經變成了三個透明度很低的灰白色的小圓點。

而這張圖則是system bars 完全顯示時候的樣子。

上面提到了如果你在system bar變暗的時候觸摸了相關區域,系統會自動清除setSystemUiVisibility()設置的flag,

其實你還可以自己手動清除:

1234View decorView = getActivity().getWindow().getDecorView();// Calling setSystemUiVisibility() with a value of 0 clears// all flags.decorView.setSystemUiVisibility(0);

上一篇:Cocos2dx之Http

下一篇:自定義view加之

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 华池县| 竹溪县| 宁强县| 常熟市| 厦门市| 徐州市| 浪卡子县| 伽师县| 阿巴嘎旗| 民县| 云梦县| 临桂县| 航空| 盐池县| 澄迈县| 新竹市| 土默特右旗| 思南县| 常熟市| 福泉市| 正镶白旗| 马鞍山市| 荃湾区| 弋阳县| 武鸣县| 栾城县| 洞头县| 调兵山市| 高唐县| 蒙自县| 天祝| 财经| 邹平县| 延长县| 泰和县| 云龙县| 清徐县| 台前县| 衡南县| 潍坊市| 南昌市|