Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.
Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.
Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.
Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.
When rendering Google Maps inside a NavigationPage that's part of a TabbedPage the controls do not work and do not render properly. This is the *primary issue* that was mentioned in the following thread: https://forums.xamarin.com/discussion/56663/adding-google-map-to-masterdetailpage-causes-rendering-issues Further information can be found in that thread along with a sample project. I've uploaded a sample project (password; support@xamarin.com) demonstrating the rendering issue: https://www.dropbox.com/s/ccnwg8uo7w0a2vz/TabbedPageRenderingIssueDemo.zip?dl=0 To test the scenario, comment or uncomment the following lines in MapManagerPage.xaml.cs this.Detail = new NavigationPage (new MapPage { Title = "Map" }) { Title = "Map" }; //this.Detail = new NavigationPage (new ContentPage { Title = "Map" }) { Title = "Map" }; When you pass MapPage() to the NavigationPage it renders abnormally as opposed to just rendering an empty ContentPage(). This is the primary issue.
Created attachment 14169 [details] Rendering on Nexus 10 I've attached an image of how it's rendering on Nexus 10 (it renders like this regardless of what version of the simulator you use).
Created attachment 14170 [details] Rendering on Nexus 10 (without MapPage passed to NavigationPage) This is an attachment of the controls rendering properly by not passing MapPage() to the NavigationPage() (within TabbedPageRenderingIssueDemo/Views/MapManagerPage.xaml.cs), but passing an empty ContentPage() instead. NOTE: This occurs on every simulator version not just Nexus 10.
These are video demonstrations of the issues occurring: https://www.youtube.com/watch?v=aP6gmS2flGg https://www.youtube.com/watch?v=hldlGRp1zSg
Tested on a Nexus 9 tablet with API 23 and I see the layout issues in landscape use the test project from #36597
Glad you can confirm. The issue still occurs whether you're in Landscape or Portrait. Also note the area below the search bar (while you have the MapPage) does not response almost as if there's a transparent area blocking any clicks if that makes sense. This is all demoed in the YouTube links above.
Created attachment 14171 [details] Exceptions thrown when clicking icons when rendering issue is evident Also note that when you actually click the icons while the rendering issue is occurring it throws all sorts of exceptions: Unable to activate instance of type Xamarin.Forms.Platform.Android.ListViewRenderer from native handle 0x47b00025 (key_handle 0x529db610). These work just fine when the MapPage() is not passed to the NavigationPage().
If you comment out setting the Content to the _mapView you get the same issue as passing MapPage() to the NavigationPage(): public async Task MakeMap() { _mapView = new CustomMapView (new NetTopologySuite.Geometries.Point (-37.814107, 144.814107).EnvelopeAroundRadiusMeters (500)) { Layers = ((IMapApplication)Application.Current).Layers, HeightRequest = 100, WidthRequest = 960, VerticalOptions = LayoutOptions.FillAndExpand, HorizontalOptions = LayoutOptions.FillAndExpand }; _mapView.Tapped += OnTapped; _mapView.PropertyChanged += OnPropertyChanged; //Content = _mapView; }
Sorry, I meant passing ContentPage() to the NavigationPage().
Just wondering whether there's an update on this bug?
Below is a screencast demo of the TabbedDemoApplication, which demonstrates the rendering issues within Android when setting a Content property to a Map. The beginning of the screencast demonstrates that the iOS application with its MasterDetailPage and TabbedPage is working fine. When opening the application in Android the rendering issue occurs when loading a Map. When commenting out the "Content = _mapView;" from the MapPage.xaml.cs and replacing it with "Content = new ContentView();" everything then renders and behaves the way its intended. http://www.screencast.com/users/FulvioCusumano/folders/Default/media/36aeffba-4419-4535-ba56-29954dcef7b0
Thanks Fulvio, changing status to REOPEN for our team to look into.
Hi Glenn, We have upgraded to Xamarin.Forms/Maps version 2.2.0.45 and now the controls do not appear over the map view, which is great! However we have run into more issues where the rendering of controls do not appear at all on the Detail. I have uploaded a screen cast to demonstrate the problem we're getting now. http://www.screencast.com/users/FulvioCusumano/folders/Default/media/6d1dd567-0dc5-4ea9-8f88-35d56f335408
Video (MP4) link: https://www.dropbox.com/s/qpi5jj4qus87hp1/XamarinAndroidMapDemo.mp4?dl=0
*** Bug 40421 has been marked as a duplicate of this bug. ***
Should be fixed in 2.3.1-pre1
Without modifying anything apart from simply switching to the Alpha Channel and then upgrading our Packages to Xamarin.Forms 2.3.0.49 we receive the following exception when we hit `LoadingApplication();` in MainActivity: Specific cast is not valid: Xamarin.Forms.Platform.Android at Xamarin.Forms.Platform.Android.NavigationRenderer.SwitchContentAsync (Xamarin.Forms.Page view, Boolean animated, Boolean removed) [0x000b3] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\Renderers\NavigationRenderer.cs:196 at Xamarin.Forms.Platform.Android.NavigationRenderer.OnPushAsync (Xamarin.Forms.Page view, Boolean animated) [0x00000] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\Renderers\NavigationRenderer.cs:124 at Xamarin.Forms.Platform.Android.NavigationRenderer.PushViewAsync (Xamarin.Forms.Page page, Boolean animated) [0x00000] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\Renderers\NavigationRenderer.cs:34 at Xamarin.Forms.Platform.Android.NavigationRenderer.<OnElementChanged>b__9_0 (Xamarin.Forms.Page p) [0x00000] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\Renderers\NavigationRenderer.cs:97 at Xamarin.Forms.EnumerableExtensions.ForEach[T] (IEnumerable`1 enumeration, System.Action`1 action) [0x00010] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\EnumerableExtensions.cs:38 at Xamarin.Forms.Platform.Android.NavigationRenderer.OnElementChanged (Xamarin.Forms.Platform.Android.ElementChangedEventArgs`1 e) [0x000d4] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\Renderers\NavigationRenderer.cs:97 at Synchronoss.Platform.Gui.Android.CustomNavigationRenderer.OnElementChanged (Xamarin.Forms.Platform.Android.ElementChangedEventArgs`1 e) [0x00003] in /Users/fulvio/Documents/TFS/Product.Mobile/ROAM/main.dev/ROAMplatform/Synchronoss/Platform/Gui/Android/CustomNavigationRenderer.cs:14 at Xamarin.Forms.Platform.Android.VisualElementRenderer`1[TElement].SetElement (Xamarin.Forms.Platform.Android.TElement element) [0x000f4] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:190 at Xamarin.Forms.Platform.Android.VisualElementRenderer`1[TElement].Xamarin.Forms.Platform.Android.IVisualElementRenderer.SetElement (Xamarin.Forms.VisualElement element) [0x00027] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:126 at Xamarin.Forms.Platform.Android.Platform.CreateRenderer (Xamarin.Forms.VisualElement element) [0x0001f] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\Platform.cs:284 at Xamarin.Forms.Platform.Android.MasterDetailContainer.set_ChildView (Xamarin.Forms.VisualElement value) [0x0003d] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\Renderers\MasterDetailContainer.cs:44 at Xamarin.Forms.Platform.Android.AppCompat.MasterDetailPageRenderer.UpdateDetail () [0x0000c] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\AppCompat\MasterDetailPageRenderer.cs:317 at Xamarin.Forms.Platform.Android.AppCompat.MasterDetailPageRenderer.Xamarin.Forms.Platform.Android.IVisualElementRenderer.SetElement (Xamarin.Forms.VisualElement element) [0x0012c] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\AppCompat\MasterDetailPageRenderer.cs:127 at Xamarin.Forms.Platform.Android.Platform.CreateRenderer (Xamarin.Forms.VisualElement element) [0x0001f] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\Platform.cs:284 at Xamarin.Forms.Platform.Android.AppCompat.Platform.AddChild (Xamarin.Forms.Page page, Boolean layout) [0x00015] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\AppCompat\Platform.cs:248 at Xamarin.Forms.Platform.Android.AppCompat.Platform.SetPage (Xamarin.Forms.Page newRoot) [0x00089] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\AppCompat\Platform.cs:237 at Xamarin.Forms.Platform.Android.FormsAppCompatActivity.InternalSetPage (Xamarin.Forms.Page page) [0x0009b] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\AppCompat\FormsAppCompatActivity.cs:355 at Xamarin.Forms.Platform.Android.FormsAppCompatActivity.SetMainPage () [0x00000] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\AppCompat\FormsAppCompatActivity.cs:429 at Xamarin.Forms.Platform.Android.FormsAppCompatActivity.LoadApplication (Xamarin.Forms.Application application) [0x0017d] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\AppCompat\FormsAppCompatActivity.cs:129 at ROAMviewer.Android.MainActivity.OnCreate (Android.OS.Bundle bundle) [0x000a0] in /Users/fulvio/Documents/TFS/Product.Mobile/ROAM/main.dev/ROAMviewer/Android/MainActivity.cs:84
Trying to install Xamarin.Forms 2.0.3.49 in a clean solution and keep receiving this when trying to install Xamarin.Forms: Error downloading 'Xamarin.Android.Support.v7.CardView.23.3.0' from 'https://www.nuget.org/api/v2/package/Xamarin.Android.Support.v7.CardView/23.3.0'.
There is no 2.3.1-pre1. Can you provide a source?
It has not yet been released. We will post an announcement on the Xamarin.Forms forums when it is available. Thank you for you patience! :)
Thanks for the update. Can you please provide a rough timeline as to when it will be publicly available? (Less than two weeks, in a month's time, etc).
Shipped today in 2.3.1-pre1