↑下ののバー(ナビゲーションバー)
Xamarin Formsでプログラムを作成しているのですが、
プログラムを起動している時に、Androidの下バー(ナビゲーションバー)を非表示にしたいのですが
どうすれば良いですかね?
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/07/08 08:14
退会済みユーザー
2020/07/08 09:13
回答1件
0
ベストアンサー
試してないので今も対応しているやり方かわかりませんが、ネイティブでの方法があったのでこちらを参考にどうぞ。
ナビゲーション バーを非表示にする
ディスプレイにナビゲーションバーがある端末のユーザー目線で考えると、勝手にバーが非表示になってしまうと困りそうなので、個人的にはおすすめはしません。
追記
Xamarin.FormsでもDependencyServiceを使用することで、各プラットフォーム固有の機能を使うことができます。
実際に実装して、動作するか確認してみました。
下部ナビゲーションバーを非表示にすることは可能なようです。
C#
1(ViewModel側) 2 3namespace HideNaviBar.ViewModels 4{ 5 public class MainPageViewModel : ViewModelBase 6 { 7 private DelegateCommand _switchCommand; 8 public DelegateCommand SwitchCommand => 9 _switchCommand ?? (_switchCommand = new DelegateCommand(ExecuteSwitchCommand)); 10 11 void ExecuteSwitchCommand() 12 { 13 var dependencyService = new Prism.Services.DependencyService(); 14 dependencyService.Get<INaviBarService>().SwitchNaviBar(); 15 } 16 17 public MainPageViewModel(INavigationService navigationService) 18 : base(navigationService) 19 { 20 Title = "Main Page"; 21 } 22 } 23}
C#
1(共通ライブラリ側) 2 3namespace HideNaviBar.Models 4{ 5 public interface INaviBarService 6 { 7 void SwitchNaviBar(); 8 } 9}
C#
1(Android側) 2 3using Android.Views; 4using HideNaviBar.Droid; 5using HideNaviBar.Models; 6using Xamarin.Forms; 7 8[assembly: Dependency(typeof(NaviBarService))] 9namespace HideNaviBar.Droid 10{ 11 public class NaviBarService : INaviBarService 12 { 13 public void SwitchNaviBar() 14 { 15 var decorView = MainActivity.Instance.Window.DecorView; 16 17 // 実際に使用する場合はこちらの方が良いと思います 18 //var systemUiFlags = SystemUiFlags.LayoutStable 19 // | SystemUiFlags.LayoutHideNavigation 20 // | SystemUiFlags.LayoutFullscreen 21 // | SystemUiFlags.HideNavigation 22 // | SystemUiFlags.Fullscreen 23 // | SystemUiFlags.ImmersiveSticky; 24 25 var uiOptions = SystemUiFlags.HideNavigation 26 | SystemUiFlags.Fullscreen; 27 decorView.SystemUiVisibility = (StatusBarVisibility)(int)uiOptions; 28 } 29 } 30}
SystemUiVisibilityの設定で、下記サイトが参考になりました。
XamarinでAndroidアプリをフルスクリーンで表示させる
投稿2020/07/08 08:56
編集2020/07/08 10:24総合スコア349
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/07/09 06:47
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。