protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); // Set our view from the "main" layout resource SetContentView(Resource.Layout.activity_main); ////var pageDefinitions = new Dictionary<PageIndex, IPageProvider<NavigationFragmentBase>> ////{ //// // cached //// {PageIndex.PageA, new CachedPageProvider<TestPageAFragment>()}, //// // oneshots //// {PageIndex.PageB, new OneshotPageProvider<TestPageBFragment>()}, ////}; var dialogDefinitions = new Dictionary <DialogIndex, ICustomDialogProvider> { { DialogIndex.TestDialogA, new OneshotCustomDialogProvider <TestDialogA>() }, { DialogIndex.TestDialogB, new OneshotCustomDialogProvider <TestDialogB>() } }; var manager = new NavigationManager <PageIndex>( SupportFragmentManager, RootView, new ViewModelResolver()); var dialogManager = new CustomDialogsManager <DialogIndex>( SupportFragmentManager, dialogDefinitions, new ViewModelResolver()); // usually you would do it in Application class but for showcase sake I will skip that InitializationRoutines.Initialize(builder => { builder.RegisterType <ClipboardProvider>().As <IClipboardProvider>().SingleInstance(); builder.RegisterType <DispatcherAdapter>().As <IDispatcherAdapter>().SingleInstance(); builder.RegisterType <FileStorageProvider>().As <IFileStorageProvider>().SingleInstance(); builder.RegisterType <MessageBoxProvider>().As <IMessageBoxProvider>().SingleInstance(); builder.RegisterType <SettingsProvider>().As <ISettingsProvider>().SingleInstance(); builder.RegisterType <UriLauncherAdapter>().As <IUriLauncherAdapter>().SingleInstance(); builder.RegisterType <VersionProvider>().As <IVersionProvider>().SingleInstance(); builder.RegisterType <PickerAdapter>().As <IPickerAdapter>().SingleInstance(); builder.RegisterType <ContextProvider>().As <IContextProvider>().SingleInstance(); builder.RegisterType <PhotoPickerAdapter>().As <IPhotoPickerAdapter>().SingleInstance(); builder.RegisterType <PhoneCallAdapter>().As <IPhoneCallAdapter>().SingleInstance(); builder.RegisterType <DataCache>().As <IDataCache>().SingleInstance(); builder.RegisterInstance(manager).As <INavigationManager <PageIndex> >(); builder.RegisterInstance(dialogManager).As <ICustomDialogsManager <DialogIndex> >(); }); DialogStyles.PasswordDialogStyle = new PasswordInputDialogStyle(); ViewModelLocator.MainViewModel.Initialize(); }
private void InitalizeDialogs() { var dialogDefinitions = new Dictionary <DialogIndex, ICustomDialogProvider> { { DialogIndex.TestDialogA, new StoryboardOneshotCustomDialogProvider <TestDialogAViewController>() }, { DialogIndex.TestDialogB, new StoryboardOneshotCustomDialogProvider <TestDialogBViewController>() }, }; var dialogManager = new CustomDialogsManager <DialogIndex>( this, dialogDefinitions, new ViewModelResolver()); AppDelegate.Instance.DialogsManager = dialogManager; }