Android Можем ли мы скрыть строку состояния при вызове onAttachedToWindow ()? - PullRequest
1 голос
/ 21 декабря 2011

Есть способ скрыть строку состояния или отключить ее, когда вызывается onAttachedToWindow, а тип окна - keyguard ?? Я попробовал это на своем занятии:

и это на создание

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().setWindowAnimations(0);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.activity_lock); 
}

public void onAttachedToWindow() {
    super.onAttachedToWindow();
    getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
}

и это в моем манифесте

android:theme="@android:style/Theme.NoTitleBar.Fullscreen";

но иногда строка состояния исчезает, а иногда появляется.

Если я попробую это:

public void onAttachedToWindow() {
    super.onAttachedToWindow();
    getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
}

выдает ошибку:

12-22 11:03:51.209: E/AndroidRuntime(9088): android.util.AndroidRuntimeException: requestFeature() must be called before adding content

1 Ответ

0 голосов
/ 22 декабря 2011

Хорошо, прежде чем вы сможете программно скрыть строку состояния, вы должны запросить функцию:

requestWindowFeature(Window.FEATURE_NO_TITLE);

А затем, чтобы запросить полноэкранный режим, вы можете просто использовать:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
...