Xamarin.Forms 3.6: Visual Has Materialized

Paul DiPietro

We’re pleased to announce the release of Xamarin.Forms 3.6 in the usual cadence of our regular releases. In addition to the usual enhancements and bug fixes, we’re also moving our Visual feature from experimental to stable status. With Visual, you can now implement a Material look-and-feel on supported controls in your Android and iOS apps.

Visual No Longer in Experimental State

As a lead-up to our 4.0 release, we are removing the experimental flag from the Visual feature and making it widely available to users. With it, you can bring Material design to mobile apps globally, or on a control-to-control basis, thus reducing the need for special renderers in your applications.

Visual ships today with Material design, a decision based on the overwhelming feedback we heard from developers that this system most closely matches their design goals. Visual profiles for Cupertino/HIG and Fluent are possible future additions. For more details on Visual, you can check out David Ortinau’s The Little Things Playground for samples and more info.

Contributions from the Community

We love getting contributions for the community, and Xamarin.Forms 3.6 includes two particularly notable enhancements: an IsReadOnly property on Entry/Editor (PR #1972), and an ItemsSource and ItemTemplate for the Map (PR #4269).


For more information about the implementation of those pull requests, read the release notes, documentation, and provided links to the original GitHub PRs. A big thank you to the enhancements’ respective contributors, Almir Vuk and Andrei Nitescu.

We’d like to thank all our contributors to 3.6, listed below. We’re happy to have you as a part of our community, and look forward to your future contributions!

User PR


[iOS] Added RowAnimationsEnabled platform specific to control row animations (#4709)

Akihiko Odaki

[XamlC] Test generic parameters to evaluate equality of types (#4062)

Almir Vuk

[Enhancement] Entry: Read-only Entry and Editor (#1972)

Andrei Misiukevich

[iOS] ImageButton border radius issue (#4518)

[iOS] Fixed keyboard type for cells in TableView (#4377) fixes #1386

[Enhancement] Added GroupHeaderStyle property for iOS specific ListView class (#4616)

[Enhancement] Added GroupHeaderStyle property for iOS specific ListView class (#4616)

[Android] Crash at Dependency service call possible fix (#4157)

[iOS] Change default background color of Cell to UIColor.Clear (#4002) fixes #3450

[macOS] BoxView binding to BackgroundColor broken (#4958)

fix #4788 (#4959) fixes #4788

fix https://github.com/xamarin//issues/5346 (#5379)

Andrei Nitescu

Map with ItemsSource and ItemTemplate (#4269) fixes #1708

Changed Span default binding to OneWay (#4850)

Fixed passing container (#5158)

[iOS] Fixed updating Label TextDecorations when no Text is set (#5013)

Artem Utin

added case in GTK listviewrendered for change of SelectedItem property (#4757)

Brian Macomber

[UWP] Fix ScrollViewer Horizontal Scroll Bar Visibility when set before control load (#3195) fixes #3193

Dan Siegel

directly load specified Font Family or other valid PostScript Font Name fixes #5372 (#5373)


Updated README to reflect correct name (#4687)


[Tizen]Update style for Phone Idiom in ImageCell renderer (#4610)


[iOS] Recover from popping page after the page has already been popped by back button (#2873)

Gerald Versluis

 [C, iOS, AND, UWP] Color for Picker.Title (#4701)

[UWP] Implementation of Switch.OnColor (#4883)

Fixed bug where the switch in a TableView would disappear on UWP. The method for setting the default color was only called when it was in a ListView. Also renamed the method to be more clear. (#4912)

[Enhancement][Core] ListView should report the index of an item on all events (#4431)

Fixed opening of multiple picker dialogs on Android (#4911) fixes #4909


Change SearchBar base class to InputView (#3248) fixes #2902

Jeremy Marcus

Update BindableLayout.cs to fix #5213 (#5243)

Joris Vergeer

[Android] Fix for ListViewRenderer causing ObjectDisposedException (#4931)

Matthew Richardson

[Enhancement] Add drag started and completed events/commands to Slider (#4423) fixes #1450

Null/disposed check for spannableString to fix ObjectDisposedException. (#4878) Fixes #4864

Paul Datsiuk

[Android] Java.Lang.RuntimeException: Animators may only be run on Lo… (#4177)

Yaser Moradi

Add Serializable on exception types (#4690)

Yun Chen

apply Remove suggestion bar in iOS picker (#4634)

Moving forward, we want to deepen our interaction with you and provide guidance to those who are interested in contributing to the Xamarin.Forms code itself. We appreciate every contribution, no matter how small! We are planning to provide video content with more an elaborate “getting started” the tutorial. Keep an eye out for that.

Quality Improvements

With every release, we include more quality improvements, and 3.6 is no different. This release ships 40+ fixes, including a number from the community. We strive to continue this cadence of frequent releases with fixes that improve your daily experiences with Xamarin.Forms.

Update Today

As always, all of the details on this latest release are available on the 3.6.0 release notes. Update the Xamarin.Forms package with your package manager and do a full rebuild. Please let us know if you encounter issues of any kind, or if you have ideas that will improve your daily use of Xamarin. Just head over to GitHub and file a new issue.

Enjoy playing around with these new features by cloning TheLittleThingsPlayground on GitHub.


Discussion is closed.

Feedback usabilla icon