1
一部のカメラ設定では、ポップアップメニュー付きのカメラアプリを作成しています。問題は、ポップアップメニューを表示するボタンをクリックすると、下部のナビゲーションバーが表示されることです。私はすでにオンラインで解決策を探してきましたが、これまでのところ私が役に立たなかったのです。PopupMenuの没入型モードでナビゲーションバーが表示される
mChangeSettingsButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final PopupMenu changeSettingsPopupMenu = new PopupMenu(Camera2VideoImageActivity.this, mChangeSettingsButton) {
@Override
public void show() {
getWindow().setFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE, WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE);
super.show();
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE);
}
};changeSettingsPopupMenu.getMenuInflater().inflate(R.menu.change_setting_popup_menu, changeSettingsPopupMenu.getMenu());
SubMenu changeImageResolutionSubMenu = changeSettingsPopupMenu.getMenu().addSubMenu(0, 100, 0, "Set Image Resolution ");
SubMenu changeVideoResolutionSubMenu = changeSettingsPopupMenu.getMenu().addSubMenu(0, 101, 0, "Set Video Resolution");
changeSettingsPopupMenu.show();
}
また、私は私のメインの活動でこれを持っている:何が起こるかの
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
if (hasFocus) {
getWindow().getDecorView().setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
}
<iframe src="https://giphy.com/embed/3oKIPh2W4bEQrGzmqQ" width="272" height="480" frameBorder="0" class="giphy-embed" allowFullScreen></iframe><p><a href="https://giphy.com/gifs/3oKIPh2W4bEQrGzmqQ">via GIPHY</a></p>
EDIT: おかげHitesh Gehlot返信のために!私はこれを試してみる。 This didn't work, Click to view image
感謝を!私はこれを試しましたが、 "getWindow()"を解決できません。スクリーンショットの元の投稿で自分の編集を確認してください。 –