UINavigationBarを実装するUITabBarControllerを作成しようとしています。これは、Xcodeで数分で実行できます。ただし、MonoTouchでMVVMCrossを使用するのに苦労しています。コードの一部を以下に示します-
最初のVCから(これはユーザーが利用規約に同意するためのものであるため、一度同意すると、それに戻るオプションはありません。したがって、真のフラグです)-
this.RequestNavigate<TabHostViewModel>(true);
私のtabBarはそのように設定されており、正常に機能します-
ViewControllers = new UIViewController[]
{
CreateTabFor("Home", "", ViewModel.homeViewModel),
CreateTabFor("History", "", ViewModel.journeyHistoryViewModel),
CreateTabFor("Contacts", "", ViewModel.contactsViewModel),
CreateTabFor("About", "", ViewModel.aboutViewModel),
};
...等。
ViewDidLoadのように最初のビュー(この場合はHomeView)を設定しようとしています-
this.NavigationController.NavigationBar.TintColor = myNavBarColour;
ただし、TabBarを設定するときに独自に作成しない限り、NavigationControllerは未定義のようです-
UIViewController HomeViewController = CreateTabFor("Home", "", ViewModel.homeViewModel);
UINavigationController HomeNavController = new UINavigationController(HomeViewController);
ViewControllers = new UIViewController[]
{
HomeNavController,
CreateTabFor("History", "", ViewModel.journeyHistoryViewModel),
CreateTabFor("Contacts", "", ViewModel.contactsViewModel),
CreateTabFor("About", "", ViewModel.aboutViewModel),
};
これで、ナビゲーションバーを使って好きなことを行うことができますが、問題は2つのナビゲーションバーがあり、1つはタイトルのない上部にあり、もう1つはそのすぐ下に作成した新しいものです。
何か考えがある人はいますか?
どうもありがとう。