/// <summary> /// Gets the main page. /// </summary> /// <returns>The Main Page.</returns> public static Page GetMainPage() { // Register our views with our view models ViewFactory.Register <MvvmSamplePage, MvvmSampleViewModel> (); ViewFactory.Register <NewPageView, NewPageViewModel> (); ViewFactory.Register <GeolocatorPage, GeolocatorViewModel> (); ViewFactory.Register <CameraPage, CameraViewModel> (); ViewFactory.Register <CacheServicePage, CacheServiceViewModel> (); ViewFactory.Register <SoundPage, SoundServiceViewModel> (); ViewFactory.Register <RepeaterViewPage, RepeaterViewViewModel>(); var mainTab = new ExtendedTabbedPage() { Title = "Xamarin Forms Labs" }; var mainPage = new NavigationPage(mainTab); mainTab.CurrentPageChanged += () => Debug.WriteLine("ExtendedTabbedPage CurrentPageChanged {0}", mainTab.CurrentPage.Title); var controls = GetControlsPage(mainPage); var services = GetServicesPage(mainPage); var mvvm = ViewFactory.CreatePage <MvvmSampleViewModel> (); mainTab.Children.Add(controls); mainTab.Children.Add(services); mainTab.Children.Add(mvvm); return(mainPage); }
public static Page GetMainPage() { var mainPage = new ExtendedTabbedPage(); mainPage.CurrentPageChanged += () => Debug.WriteLine(string.Format("ExtendedTabbedPage CurrentPageChanged {0}", mainPage.CurrentPage.Title)); var controls = new CarouselPage(); controls.Title = "Controls"; controls.Children.Add(new CalendarPage()); var services = new CarouselPage(); services.Title = "Services"; services.Children.Add(new TextToSpeechPage()); var buttons = new CarouselPage(); buttons.Title = "Buttons"; buttons.Children.Add(new ButtonPage()); mainPage.Children.Add(controls); mainPage.Children.Add(services); mainPage.Children.Add(buttons); return(mainPage); }
protected override void OnElementChanged(ElementChangedEventArgs <Xamarin.Forms.TabbedPage> e) { base.OnElementChanged(e); if (e.NewElement != null) { if (ViewGroup.GetChildAt(0) is AWidget.RelativeLayout relativeLayout) { _relativeLayout = relativeLayout; if (relativeLayout.GetChildAt(1) is BottomNavigationView bottomNavigationView) { //var txt = new TextView(Context); //txt.Text = "HalloHallo"; //txt.SetBackgroundColor(Android.Graphics.Color.Red); //txt.LayoutParameters = parms1; var count = _relativeLayout.ChildCount; ExtendedTabbedPage page = e.NewElement as ExtendedTabbedPage; var contentView = page.TabHeaderContent; var renderer = Platform.CreateRendererWithContext(contentView, this.Context); if (Platform.GetRenderer(contentView) == null) { Platform.SetRenderer(contentView, renderer); } AWidget.RelativeLayout.LayoutParams layoutParms = new AWidget.RelativeLayout.LayoutParams( LayoutParams.MatchParent, (int)contentView.HeightRequest); layoutParms.AddRule(AWidget.LayoutRules.Above, bottomNavigationView.Id); //Platform.SetRenderer(renderer) renderer.Tracker.UpdateLayout(); var nativeView = renderer.View; //view.SetBackground(Android.Widget.FrameLayout); nativeView.LayoutParameters = layoutParms; //SetNativeControl //view.Layout(0, 0, (int)tb.TabHeaderContent.WidthRequest, (int)tb.TabHeaderContent.HeightRequest); //view.tr _relativeLayout.AddView(nativeView); //_relativeLayout.UpdateViewLayout(view, parms1); //var view = ConvertFormsToNative(tb.TabHeaderContent, new Rectangle(0, 0, 100, 100)); //_relativeLayout.AddView(view, count); //_relativeLayout.AddView(view); //_relativeLayout.AddView(txt, count); } } } }
/// <summary> /// Gets the main page. /// </summary> /// <returns>The Main Page.</returns> public static Page GetMainPage() { // Register our views with our view models ViewFactory.Register <MvvmSamplePage, MvvmSampleViewModel>(); ViewFactory.Register <NewPageView, NewPageViewModel>(); ViewFactory.Register <GeolocatorPage, GeolocatorViewModel>(); ViewFactory.Register <CameraPage, CameraViewModel>(); ViewFactory.Register <CacheServicePage, CacheServiceViewModel>(); ViewFactory.Register <SoundPage, SoundServiceViewModel>(); ViewFactory.Register <RepeaterViewPage, RepeaterViewViewModel>(); ViewFactory.Register <WaveRecorderPage, WaveRecorderViewModel>(); var mainTab = new ExtendedTabbedPage() { Title = "XLabs", SwipeEnabled = true, TintColor = Color.White, BarTintColor = Color.Blue, Badges = { "1", "2", "3" }, TabBarBackgroundImage = "ToolbarGradient2.png", TabBarSelectedImage = "blackbackground.png", }; var mainPage = new NavigationPage(mainTab); Resolver.Resolve <IDependencyContainer>() .Register <INavigationService>(t => new NavigationService(mainPage.Navigation)); mainTab.CurrentPageChanged += () => Debug.WriteLine("ExtendedTabbedPage CurrentPageChanged {0}", mainTab.CurrentPage.Title); var controls = GetControlsPage(mainPage); var services = GetServicesPage(mainPage); var charts = GetChartingPage(mainPage); var samples = GetSamplesPage(mainPage); var mvvm = ViewFactory.CreatePage <MvvmSampleViewModel, Page>(); mainTab.Children.Add(controls); mainTab.Children.Add(services); mainTab.Children.Add(charts); mainTab.Children.Add(mvvm as Page); mainTab.Children.Add(samples); return(mainPage); }
public static Page GetMainPage() { var tabPage = new ExtendedTabbedPage() { Title = "XForms Toolkit Samples" }; var mainPage = new NavigationPage(tabPage); var controls = new ContentPage() { Title = "Controls" }; controls.Title = "Controls"; ListView lst = new ListView(); lst.ItemsSource = new List <string>() { "Calendar", "AutoComplete" }; lst.ItemSelected += (sender, e) => { switch (e.SelectedItem.ToString()) { case "Calendar": mainPage.Navigation.PushAsync(new CalendarPage()); break; case "AutoComplete": mainPage.Navigation.PushAsync(new AutoCompletePage()); break; default: break; } }; controls.Content = lst; var services = new ContentPage() { Title = "Services" }; ListView lstServices = new ListView(); lstServices.ItemsSource = new List <string>() { "Text To Speech", "Device Info" }; lstServices.ItemSelected += (sender, e) => { switch (e.SelectedItem.ToString()) { case "Text To Speech": mainPage.Navigation.PushAsync(new TextToSpeechPage()); break; case "Device Info": mainPage.Navigation.PushAsync(new DeviceInfoPage()); break; default: break; } }; services.Content = lstServices; var buttons = new CarouselPage(); buttons.Title = "Buttons"; buttons.Children.Add(new ButtonPage()); var labels = new CarouselPage(); labels.Title = "Labels"; labels.Children.Add(new ExtendedLabelPage()); tabPage.Children.Add(controls); tabPage.Children.Add(services); tabPage.Children.Add(buttons); tabPage.Children.Add(labels); tabPage.CurrentPageChanged += () => Debug.WriteLine(string.Format("ExtendedTabbedPage CurrentPageChanged {0}", tabPage.CurrentPage.Title)); return(mainPage); }