這篇文章將為大家詳細(xì)講解有關(guān)Android應(yīng)用怎么實(shí)現(xiàn)隱藏狀態(tài)欄,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名與空間、網(wǎng)頁空間、營銷軟件、網(wǎng)站建設(shè)、興山網(wǎng)站維護(hù)、網(wǎng)站推廣。
方法一:
public class MainActivity extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
// 隱藏標(biāo)題欄
requestWindowFeature(Window.FEATURE_NO_TITLE);
// 隱藏狀態(tài)欄
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_main);
}
} 方法二:
<!-- 同時(shí)隱藏狀態(tài)欄和標(biāo)題欄 -->
<activity
android:name="com.ysj.demo.MainActivity"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity> 方法三:
<!-- Application theme. --> <style name="AppTheme" parent="AppBaseTheme"> <!-- All customizations that are NOT specific to a particular API-level can go here. --> <!-- 隱藏狀態(tài)欄 --> <item name="android:windowFullscreen">true</item> <!-- 隱藏標(biāo)題欄 --> <item name="android:windowNoTitle">true</item> </style>
方法四:動(dòng)態(tài)顯示隱藏狀態(tài)欄
//隱藏狀態(tài)欄 WindowManager.LayoutParams lp = context.getWindow().getAttributes(); lp.flags |= WindowManager.LayoutParams.FLAG_FULLSCREEN; context.getWindow().setAttributes(lp); //顯示狀態(tài)欄 WindowManager.LayoutParams attr = context.getWindow().getAttributes(); attr.flags &= (~WindowManager.LayoutParams.FLAG_FULLSCREEN); context.getWindow().setAttributes(attr);
方法五:動(dòng)態(tài)顯示隱藏狀態(tài)欄
View類提供了setSystemUiVisibility和getSystemUiVisibility方法,這兩個(gè)方法實(shí)現(xiàn)對狀態(tài)欄的動(dòng)態(tài)顯示或隱藏的操作,以及獲取狀態(tài)欄當(dāng)前可見性。
setSystemUiVisibility方法傳入的實(shí)參分析:
setSystemUiVisibility(int visibility)方法可傳入的實(shí)參為:
1. View.SYSTEM_UI_FLAG_VISIBLE:顯示狀態(tài)欄,
Activity不全屏顯示(恢復(fù)到有狀態(tài)的正常情況)。
2. View.INVISIBLE:隱藏狀態(tài)欄,同時(shí)Activity會伸展全屏顯示。
3. View.SYSTEM_UI_FLAG_FULLSCREEN:Activity全屏顯示,且狀態(tài)欄被隱藏覆蓋掉。
4. View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN:Activity全屏顯示,但狀態(tài)欄不會被隱藏覆蓋,狀態(tài)欄依然可見,Activity頂端布局部分會被狀態(tài)遮住。
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:隱藏虛擬按鍵(導(dǎo)航欄)。有些手機(jī)會用虛擬按鍵來代替物理按鍵。
8. View.SYSTEM_UI_FLAG_LOW_PROFILE:狀態(tài)欄顯示處于低能顯示狀態(tài)(low profile模式),狀態(tài)欄上一些圖標(biāo)顯示會被隱藏。
package com.administrator.statubarapplication;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.TextView;
public class MainActivity extends Activity implements View.OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
assignViews();
setOnClicks();
}
private void setOnClicks() {
mButton1.setOnClickListener(this);
mButton2.setOnClickListener(this);
mButton3.setOnClickListener(this);
mButton4.setOnClickListener(this);
mButton5.setOnClickListener(this);
mButton6.setOnClickListener(this);
mButton7.setOnClickListener(this);
}
private LinearLayout mMain;
private TextView mTextview;
private Button mButton1;
private Button mButton2;
private Button mButton3;
private Button mButton4;
private Button mButton5;
private Button mButton6;
private Button mButton7;
private void assignViews() {
mMain = (LinearLayout) findViewById(R.id.main);
mTextview = (TextView) findViewById(R.id.textview);
mButton1 = (Button) findViewById(R.id.button1);
mButton2 = (Button) findViewById(R.id.button2);
mButton3 = (Button) findViewById(R.id.button3);
mButton4 = (Button) findViewById(R.id.button4);
mButton5 = (Button) findViewById(R.id.button5);
mButton6 = (Button) findViewById(R.id.button6);
mButton7 = (Button) findViewById(R.id.button7);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.button1:
//Activity全屏顯示,且狀態(tài)欄被隱藏覆蓋掉
mMain.setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN);
mTextview.setText("Activity全屏顯示,且狀態(tài)欄被隱藏覆蓋掉\nView.SYSTEM_UI_FLAG_FULLSCREEN");
break;
case R.id.button2:
mMain.setSystemUiVisibility(View.SYSTEM_UI_FLAG_VISIBLE);
mTextview.setText("恢復(fù)到有狀態(tài)的正常情況\nView.SYSTEM_UI_FLAG_VISIBLE");
break;
case R.id.button3:
mMain.setSystemUiVisibility(View.INVISIBLE);
mTextview.setText("//隱藏狀態(tài)欄,同時(shí)Activity會伸展全屏顯示\nView.INVISIBLE");
break;
case R.id.button4:
mMain.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
mTextview.setText("Activity全屏顯示,但狀態(tài)欄不會被隱藏覆蓋,狀態(tài)欄依然可見,Activity頂端布局部分會被狀態(tài)遮\nView" +
".SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN \n View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION");
break;
case R.id.button5:
mMain.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
mTextview.setText("Activity全屏顯示,狀態(tài)欄透明\nView.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION");
break;
case R.id.button6:
mMain.setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
mTextview.setText("隱藏虛擬按鍵\nView.SYSTEM_UI_FLAG_HIDE_NAVIGATION");
break;
case R.id.button7:
mMain.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LOW_PROFILE);
mTextview.setText("狀態(tài)欄低能顯示,有一些會被隱藏\nView.SYSTEM_UI_FLAG_LOW_PROFILE");
break;
default:
break;
}
}
} 下面看下 隱藏標(biāo)題欄和底部操作欄,可上下滑動(dòng)顯示代碼
@Override
public void onWindowFocusChanged(boolean hasFocus)
{
super.onWindowFocusChanged(hasFocus);
if (hasFocus)
{
View decorView = that.getWindow().getDecorView();
decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY | View.SYSTEM_UI_FLAG_FULLSCREEN);
}
}關(guān)于Android應(yīng)用怎么實(shí)現(xiàn)隱藏狀態(tài)欄就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。
當(dāng)前標(biāo)題:Android應(yīng)用怎么實(shí)現(xiàn)隱藏狀態(tài)欄
網(wǎng)站網(wǎng)址:http://chinadenli.net/article30/pgjgpo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、企業(yè)網(wǎng)站制作、虛擬主機(jī)、App開發(fā)、網(wǎng)站維護(hù)、建站公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)