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

首頁 > 系統(tǒng) > Android > 正文

Android4.4+ 實現(xiàn)半透明狀態(tài)欄(Translucent Bars)

2019-10-22 18:27:32
字體:
供稿:網(wǎng)友

Android從4.4(KitKat) 開始進行了一些視覺上的改善和提升,其中包括讓狀態(tài)欄(Status Bar)和下方導(dǎo)航欄(Navigation Bar)進行半透明處理,可以使APP內(nèi)容向上下延伸,使整個畫面的利用度大幅度提升,本篇就來說說這個“半透明狀態(tài)欄”(Translucent Bars)。

簡單做了個Demo效果如下圖

Android半透明狀態(tài)欄,Android狀態(tài)欄半透明,Android下方導(dǎo)航欄半透明

*這里解釋個誤區(qū),國內(nèi)開發(fā)者和設(shè)計師經(jīng)常把這種半透明效果稱為沉浸式狀態(tài)欄這是不對的, 沉浸式Immersive mode,官方解釋為hiding all system UI根本不是這種半透明的效果。

下面說說如何使用這種效果:

1、在onCreate里面代碼設(shè)置半透明的屬性,由于只有Android 4.4以上才支持這種效果,所以代碼需要判斷下

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {      //透明狀態(tài)欄      getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);      //透明底部導(dǎo)航欄      getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);     }

2、在這個界面上我去掉了Actionbar,實現(xiàn)方式有很多,這里我使用的是在Style里去掉。

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">    <!-- Customize your theme here. -->  </style>

3、這個部分需要留意一下,如果希望APP的顯示內(nèi)容正常和滾動透明化需要加上android:fitsSystemWindows=”true”和android:clipToPadding=”false”的屬性,建議你把這兩個屬性好好試試加上與否的區(qū)別。

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"  xmlns:tools="http://schemas.android.com/tools"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:fitsSystemWindows="true"  android:clipToPadding="false"  android:background="#795548"  tools:context=".DefaultActivity" >  <TextView    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:textSize="18sp"    android:textColor="#ffffff"    android:text="@string/str" /></ScrollView>

這樣一個簡單的半透明化效果就實現(xiàn)了

詳細源碼:

Layout

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"  xmlns:tools="http://schemas.android.com/tools"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:fitsSystemWindows="true"  android:clipToPadding="false"  android:background="#795548"  tools:context=".DefaultActivity" >  <TextView    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:textSize="18sp"    android:textColor="#ffffff"    android:text="@string/str" /></ScrollView>

Style

<resources>  <!-- Base application theme. -->  <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">    <!-- Customize your theme here. -->  </style></resources>

MainActivity

public class MainActivity extends AppCompatActivity {  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {      //透明狀態(tài)欄      getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);      //透明導(dǎo)航欄      getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);     }    setContentView(R.layout.activity_main);  }

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識閱讀請移步到Android開發(fā)頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 济宁市| 奉贤区| 靖边县| 安康市| 甘孜| 南昌县| 锡林郭勒盟| 安泽县| 肥东县| 株洲县| 邛崃市| 哈巴河县| 汶上县| 长沙市| 江油市| 独山县| 资阳市| 仁怀市| 康乐县| 嘉祥县| 宣武区| 赫章县| 辽宁省| 营口市| 隆尧县| 类乌齐县| 郴州市| 韩城市| 治多县| 锡林郭勒盟| 双牌县| 崇义县| 盐边县| 甘洛县| 广昌县| 昌平区| 盱眙县| 马龙县| 体育| 四子王旗| 老河口市|