Androidの5つのステータスバーとタイトルバーを隠す方法
6911 ワード
Androidの5つのステータスバーとタイトルバーを隠す方法
方法1:
方法2:
方法3:
方法4:非表示のステータスバーを動的に表示する
方法5:非表示のステータスバーを動的に表示する
Viewクラスでは、setSystemUiVisibilityメソッドとgetSystemUiVisibilityメソッドが用意されています.この2つのメソッドは、ステータスバーの動的表示または非表示の操作を実現し、ステータスバーの現在の可視性を取得します.
setSystemUIVisibilityメソッドの導入に関する実例分析:
setSystemUiVisibility(int visibility)メソッドに入力できる実例は、次のとおりです.
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モード)で、ステータスバーのアイコンの表示が非表示になります.
方法1:
public class MainActivity extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
//
requestWindowFeature(Window.FEATURE_NO_TITLE);
//
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_main);
}
}
方法2:
方法3:
方法4:非表示のステータスバーを動的に表示する
//
WindowManager.LayoutParams lp = context.getWindow().getAttributes();
lp.flags |= WindowManager.LayoutParams.FLAG_FULLSCREEN;
context.getWindow().setAttributes(lp);
//
WindowManager.LayoutParams attr = context.getWindow().getAttributes();
attr.flags &= (~WindowManager.LayoutParams.FLAG_FULLSCREEN);
context.getWindow().setAttributes(attr);
方法5:非表示のステータスバーを動的に表示する
Viewクラスでは、setSystemUiVisibilityメソッドとgetSystemUiVisibilityメソッドが用意されています.この2つのメソッドは、ステータスバーの動的表示または非表示の操作を実現し、ステータスバーの現在の可視性を取得します.
setSystemUIVisibilityメソッドの導入に関する実例分析:
setSystemUiVisibility(int visibility)メソッドに入力できる実例は、次のとおりです.
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モード)で、ステータスバーのアイコンの表示が非表示になります.
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 ,
mMain.setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN);
mTextview.setText("Activity ,
View.SYSTEM_UI_FLAG_FULLSCREEN");
break;
case R.id.button2:
mMain.setSystemUiVisibility(View.SYSTEM_UI_FLAG_VISIBLE);
mTextview.setText("
View.SYSTEM_UI_FLAG_VISIBLE");
break;
case R.id.button3:
mMain.setSystemUiVisibility(View.INVISIBLE);
mTextview.setText("// , Activity
View.INVISIBLE");
break;
case R.id.button4:
mMain.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
mTextview.setText("Activity , , ,Activity
View" +
".SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION");
break;
case R.id.button5:
mMain.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
mTextview.setText("Activity ,
View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION");
break;
case R.id.button6:
mMain.setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
mTextview.setText("
View.SYSTEM_UI_FLAG_HIDE_NAVIGATION");
break;
case R.id.button7:
mMain.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LOW_PROFILE);
mTextview.setText(" ,
View.SYSTEM_UI_FLAG_LOW_PROFILE");
break;
default:
break;
}
}
}