###実現したいこと
AlertDialogを表示するときにも全画面を保ちたい
###発生している問題
AlertDialogを表示するときに、非表示にしていたナビゲーションバーがでてきてしまいます。
###ナビゲーションバー非表示の処理箇所
java
1@Override 2 protected void onCreate(Bundle savedInstanceState) { 3 super.onCreate(savedInstanceState); 4 5 // ナビゲーションバーの非表示 6 View decor = this.getWindow().getDecorView(); 7 decor.setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION 8 | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
###ダイアログの表示箇所
java
1 private void TimeDialog(final TextView oTextView) { 2 3 LayoutInflater factory = LayoutInflater.from(this); 4 final View timeView = factory.inflate(R.layout.keyboard, null); 5 6 AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this); 7 alertDialogBuilder.setView(timeView); 8 9 final TimePicker timeStart = (TimePicker) timeView.findViewById(R.id.timePicker1); 10 timeStart.setIs24HourView(true); 11 12 if(oTextView.length() == 5){ 13 timeStart.setCurrentHour(getIntValue(oTextView.getText().toString().substring(0,2),0)); 14 timeStart.setCurrentMinute(getIntValue(oTextView.getText().toString().substring(3,5),0)); 15 }else{ 16 timeStart.setCurrentHour(0); 17 timeStart.setCurrentMinute(0); 18 } 19 20 //フォーカス無効(キーボードから入力させない) 21 timeStart.setDescendantFocusability(TimePicker.FOCUS_BLOCK_DESCENDANTS); 22 23 alertDialogBuilder.setNegativeButton("クリア", new DialogInterface.OnClickListener() { 24 @Override 25 public void onClick(DialogInterface dialog, int which) { 26 oTextView.setText(""); 27 } 28 }); 29 30 alertDialogBuilder.setNeutralButton("OK", new DialogInterface.OnClickListener() { 31 @Override 32 public void onClick(DialogInterface dialog, int which) { 33 String strStartHour = StringCls.PadLeft(String.valueOf(timeStart.getCurrentHour()), 2, "0"); 34 String strStartMinute = StringCls.PadLeft(String.valueOf(timeStart.getCurrentMinute()), 2, "0"); 35 36 oTextView.setText(strStartHour + ":" + strStartMinute); 37 } 38 }); 39 40 alertDialogBuilder.setPositiveButton("戻る", new DialogInterface.OnClickListener() { 41 @Override 42 public void onClick(DialogInterface dialog, int which) { 43 } 44 }); 45 46 alertDialogBuilder.setCancelable(true); 47 48 AlertDialog alertDialog = alertDialogBuilder.create(); 49 50 51 alertDialog.show(); 52 53 54 alertDialog.setCanceledOnTouchOutside(false);//ダイアログの外部をタッチしたとき閉じないようにする 55 56 57 return; 58 }
###試したこと
alertDialog.show(); の前に
java
1View decor = alertDialog.getWindow().getDecorView(); 2 decor.setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION 3 | View.SYSTEM_UI_FLAG_FULLSCREEN 4 | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); 5
を記述しました。
###試した結果
ナビゲーションバーの非表示どころかAlertDialogすら表示されなくなってしまいました。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。