2012年6月11日月曜日

ステータスバーを消す

アンテナやバッテリーのアイコンなどが表示されているエリアはステータスバーといいます。

通常はこういった情報も表示させておきたいものですが、タイトルバー同様、デザインの関係で非表示にしたい場合もあるでしょう。

今回はステータスバーを非表示にしてみます。

StatusBarTest1aActivity.java
package jp.co.triware.samples.StatusBarTest1a;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.WindowManager;
import android.view.View.OnClickListener;
import android.widget.Button;

public class StatusBarTest1aActivity extends Activity {
    private boolean mbNoStatusBar = false;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        Button btn = (Button)findViewById(R.id.toggle_btn);
        btn.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                mbNoStatusBar = mbNoStatusBar ? false : true;
                if (mbNoStatusBar == true) {
                    getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
                } else {
                    getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
                }
            }
        });
    }
}