setSystemUiVisibility() と戦って、しばらくの間 (ビデオ プレーヤーの場合) ソフト ナビゲーション ボタンを非表示にしようとしました。宣伝どおりには機能しないようです。これが私のコードですFrameLayout
。
void setNavVisibility(boolean visible)
{
int newVis = SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN;
if (!visible)
{
newVis |= SYSTEM_UI_FLAG_LOW_PROFILE | SYSTEM_UI_FLAG_HIDE_NAVIGATION;
}
setSystemUiVisibility(newVis);
}
SDK の例から少し変更:
void setNavVisibility(boolean visible) {
int newVis = SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| SYSTEM_UI_FLAG_LAYOUT_STABLE;
if (!visible) {
newVis |= SYSTEM_UI_FLAG_LOW_PROFILE | SYSTEM_UI_FLAG_FULLSCREEN
| SYSTEM_UI_FLAG_HIDE_NAVIGATION;
}
呼び出されても何もしません。別の からそれらを呼び出すと、ある程度成功しましたView
が、ドキュメントには、View
呼び出し元に何らかの効果があるとは記載されていませんか? ここでは、ドキュメンテーションが (驚きの驚き) やや欠けていると思います。本当に何が起こっているのか知っている人はいますか?