Xamarin.Forms.4.5.0.530 (4.5.0 Service Release 3) Release Notes
Getting Started | What's New | Known Issues | Breaking Changes | API Changes | Blogs | Thank you | Feedback | Open Source
Summary
Many core controls have received additional improvements, and we've introduced a few new capabilities to optimize your productivity developing cross-platform applications.
AndroidX
Xamarin.Forms now uses the latest AndroidX libraries from Google. These replace the Android Support libraries which are no longer being updated. This requires no change to your code. If you notice any undesirable side-effects, please open an issue here.
Built with Visual Studio 2019
The Xamarin.Forms NuGet is now being built with Visual Studio 2019 and the latest Mono and platform SDKs while still supporting the ability to build with Visual Studio 2017 and the equivalent on Mac. If you notice any undesirable side-effects, please open an issue here.
Embedded Fonts
Now to use fonts you only need to add them to your Xamarin.Forms shared library as embedded resources and reference them with an assembly tag, rather than adding them to multiple platforms, each with their own implementation rules. To your AssemblyInfo.cs
add:
using Xamarin.Forms;
[assembly: ExportFont("CuteFont-Regular.ttf")]
Then to use the font in XAML, reference that name:
<Label Text="Hello Embedded Fonts" FontFamily="CuteFont-Regular"/>
VisualStateManager Target
Now you can update multiple controls when a state changes by specifying the target control and property. It can look something like this:
<VisualStateManager.VisualStateGroups>
<VisualStateGroup Name="ColorStates">
<VisualState Name="Red">
<VisualState.Setters>
<Setter TargetName="TargetLabel1" Property="Label.BackgroundColor" Value="#340002" />
<Setter TargetName="TargetLabel1" Property="Label.TextColor" Value="#920e0c" />
<Setter TargetName="TargetLabel1" Property="Label.Text" Value="Red" />
</VisualState.Setters>
</VisualState>
<VisualState Name="Blue">
<VisualState.Setters>
<Setter TargetName="TargetLabel1" Property="Label.BackgroundColor" Value="#4a707a" />
<Setter TargetName="TargetLabel1" Property="Label.TextColor" Value="#94b0b7" />
<Setter TargetName="TargetLabel1" Property="Label.Text" Value="Blue" />
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
Remove UIWebView
To make sure the UIWebView
control renderer is linked out even when it's not being directly used, and to avoid warnings from Apple during the review process, add this flag to your iOS projects mtouch
arguments:
--optimize=experimental-xforms-product-type
Note that this also requires a release of Xamarin.iOS that'll come after mid-January via a service release to Visual Studio 2019 and Visual Studio 2019 for Mac.
What's New in this Release
Roadmap
- "[Tizen] MediaElement control support" (#9634) (added in 4.5.0.396 (4.5.0 Service Release 1))
- "Custom/Embedded fonts" (#6013)
- Github #1692 - "[F100] MediaPlayer View" (#9439) (added in 4.5.0.282-pre4 (4.5.0 Pre Release 4))
- Github #4232 - "Spec: Visual State Manager Improvements" (#9422) (added in 4.5.0.282-pre4 (4.5.0 Pre Release 4))
- Github #4924 - "[F100] Add "Target" support to VisualStateManager" (#5034) (#8144)
F100s
- "[iOS] Add UpdateMode platform-specific to DatePicker and TimePicker" (#8048)
- Github #2235 - "Improved image organization" (#3263) (#3420)
- Github #3228 - "Feature Request - Default Search Directory for UWP Icons (Platform Specific)" (#3263) (#3420)
- Github #5177 - "[Enhancement] Change NavigationPage back button color on Android" (#7365)
- Github #7135 - "[Enhancement] Add platform specific property to set the iOS UITabBar Translucent property to false" (#7315)
CollectionView
- "[Android] Changes in SwipeView to avoid the use of APIs that require a specific API level" (#9175) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- "[Android] Fix NRE when setting the VisualState on the default cell" (#9708) (added in 4.5.0.396 (4.5.0 Service Release 1))
- "[Android] Fix some issues in UITests" (#8764)
- "[iOS] Fix NRE when not using template on CarouselView" (#9676) (added in 4.5.0.356 (4.5.0))
- "[platform] improve perf of PropertyChangedEventArgsExtensions" (#9084)
- "[UWP] Implement CurrentItem on CarouselView" (#7590)
- "[UWP] Make sure to call UpdateInitialPosition on CarouselView" (#10041) (added in 4.5.0.495 (4.5.0 Service Release 2))
- "Move CarouselViewRenderer scrolled overrides to listener" (#9414) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- "Propagate BindingContext to ItemsLayout" (#9221) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- "The great Androidx IF Def'ing of 2019" (#8898) (added in 4.5.0.187-pre2 (4.5.0 Pre Release 2))
- Github #10019 - "[Bug, UWP] IndicatorCodeGallery - I can't get to the last item." (#10068) (added in 4.5.0.495 (4.5.0 Service Release 2))
- Github #7323 - "[Xamarin.iOS] Deprecated API Usage UIWebView" (#8001)
- Github #7393 - "[Bug] CollectionView problems and crashes with IsGrouped="true"" (#8808) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #7904 - "[Bug] CarouselView doesn't implement the defined visual states" (#8785) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #8198 - "[Bug] ScrollView at CollectionView at RefreshView always leads to Pull-To-Refresh" (#8224)
- Github #8203 - "CollectionView fires SelectionChanged x (number of items selected +1) times, while incrementing SelectedItems from 0 to number of items each time" (#8737) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #8345 - "[Bug] CollectionView ItemSpacing does not affect the Item spacing on iOS" (#8872)
- Github #8557 - "[Bug] Grouped header with incorrect size when use GridItemsLayout with two columns on the CollectionView" (#8563) (added in 4.5.0.356 (4.5.0))
- Github #8586 - "[Bug] Tizen Tv - app crashes if collectionview is IsVisible is set to false" (#9367) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #8700 - "[Bug] [Android] CollectionView don't set BindingContext in Header" (#9361) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #8899 - "Clearing CollectionView IsGrouped="True" crashes application iOS & UWP" (#9287) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #8912 - "[Bug] Indicator.MaximumVisible property has no effect" (#9592) (added in 4.5.0.356 (4.5.0))
- Github #8913 - "[Bug][iOS] IndicatorView.IndicatorsShape=Square has no effect on iOS" (#9595) (added in 4.5.0.356 (4.5.0))
- Github #8992 - "[Bug] IndicatorView - ItemsSourceBy not showing up in Intellisense" (#9332) (added in 4.5.0.356 (4.5.0))
- Github #9014 - "[Bug] IndicatorView shows no indicators on UWP" (#9614) (added in 4.5.0.356 (4.5.0))
- Github #9020 - "[Bug] CarouselView Android Can't Scroll Back when Last Item is Reached" (#9700) (added in 4.5.0.396 (4.5.0 Service Release 1))
- Github #9030 - "[Bug] ClassNotFoundException when using snap points on API < 23" (#9378) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #9087 - "[Bug] Collection View items don't load bindable properties values inside OnElementChanged" (#9273) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #9159 - "[Bug] CarouselView IsBounceEnabled=False has no effect on Android" (#9160) (added in 4.5.0.187-pre2 (4.5.0 Pre Release 2))
- Github #9196 - "[Bug] [iOS] CollectionView EmptyView causes the application to crash" (#9575) (added in 4.5.0.356 (4.5.0))
- Github #9322 - "[Bug] CarouselView's Position doesn't get updated to reflect ObservableCollection.Remove" (#9854) (added in 4.5.0.495 (4.5.0 Service Release 2))
- Github #9417 - "XF 4.5 pre2 crashes on Swipe GetSwipeItemSize " (#9464) (added in 4.5.0.495 (4.5.0 Service Release 2))
- Github #9436 - "[Bug] [iOS] --optimize=experimental-xforms-product-type additional mtouch argument causes app crash" (#9505) (added in 4.5.0.356 (4.5.0))
- Github #9583 - "[Bug] iOS CarouselView size not changed if device orientation changed" (#9654) (added in 4.5.0.396 (4.5.0 Service Release 1))
- Github #9666 - "[Bug][iOS] IndicatorView not visible when ItemSource of Carousel is set delayed (INotifyPropertyChanged)" (#9672) (added in 4.5.0.396 (4.5.0 Service Release 1))
Shell
- "[UWP] Enables usage of font image source for bottom bar tabs" (#8354)
- "Make create shell table view controller virtual" (#9327) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- "Propagate cleared shell elements correctly" (#9615) (added in 4.5.0.356 (4.5.0))
- "Shell hotreload fixes when changing Shell class" (#10064) (added in Xamarin.Forms.4.5.0.530 (4.5.0 Service Release 3))
- "Shell Modal Behavior" (#8790) (added in 4.5.0.187-pre2 (4.5.0 Pre Release 2))
- Github #5108 - "Frame with a shadow on iOS adds a shadow to the contents" (#7518)
- Github #6384 - "[Bug] [iOS] content page in tabbed page not showing inside shell tab" (#7532)
- Github #6784 - "[Bug] [Shell] [iOS] ShellItem.CurrentItem not set when selecting shell section aggregated in more tab" (#6786) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #6804 - "[Bug] Shell SearchHandler - Search text getting lost on execute search" (#8101) (added in 4.5.0.356 (4.5.0))
- Github #7181 - "[Bug] Cannot update ToolbarItem text and icon" (#8254)
- Github #7230 - "[Enhancement] Shell allow dynamic load FlyoutItem!" (#9023)
- Github #7396 - "[Bug] Shell: Setting Shell.BackgroundColor overrides all colors of TabBar" (#7962)
- Github #7416 - "[Bug] Crash In ShellSectionRootHeader with scrollable top tabs" (#7884)
- Github #8211 - "[Bug] Shell throws NullRef if improperly configured" (#8250)
- Github #8767 - "[Bug][iOS] SwipeView SwipeBehaviorOnInvoked RemainOpen issue on iOS" (#9664) (added in 4.5.0.495 (4.5.0 Service Release 2))
- Github #9344 - "[Bug][Shell] Shell pass data navigation failure with Xaminals in 4.5-pre2" (#9348) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #9371 - "[Bug] FontImage Icon fails on Android in certain situations" (#9506) (added in 4.5.0.356 (4.5.0))
- Github #9483 - "[Bug] iOS Shell - ToolbarItems not updating when using TabBar" (#9628) (added in 4.5.0.356 (4.5.0))
- Github #9801 - "[Bug] Tab.Items.Clear() crashes on 4.5.0.356." (#9940) (added in 4.5.0.495 (4.5.0 Service Release 2))
Visual
- "Androidx bump to stable release packages" (#9594) (added in 4.5.0.356 (4.5.0))
- "Apply cecil fixes to make packages 2017 compatible" (#9145) (added in 4.5.0.187-pre2 (4.5.0 Pre Release 2))
- "Ios 2017 compatible Xamarin.Forms.Platform.iOS" (#9760) (added in 4.5.0.396 (4.5.0 Service Release 1))
- Github #4606 - "[Android] ImageButton on android is not clipping view to corner radius" (#7723)
- Github #5968 - "[Bug] ProgressBar with Visual=Material causing crash on Android 5.0" (#6199) (added in 4.5.0.495 (4.5.0 Service Release 2))
- Github #6187 - "Visual Material Entry underline color should reference PlaceholderColor" (#8530) (added in 4.5.0.495 (4.5.0 Service Release 2))
- Github #8633 - "[Bug] NuGet version conflict between Xamarin.Froms.Maps and Microsoft.AppCenter.Push" (#7660)
- Github #9593 - "When Xamarin.Forms isn't referenced in the head projects, XF build targets aren't imported" (#10125) (added in Xamarin.Forms.4.5.0.530 (4.5.0 Service Release 3))
Maps
- Github #4691 - "[Enhancement] SecurityException from Forms.Maps with explicit target SDK" (#7282)
Other Enhancements
- "[macOS] Add character spacing to button and label" (#8206)
- "[macOS] Implement slider min/max/thumb color" (#8098)
- "[Tizen] Supports Custom/Embedded and System fonts" (#9138) (added in 4.5.0.187-pre2 (4.5.0 Pre Release 2))
- "[WPF] ListView.Scrolled event implemented" (#8197)
- "[WPF] Frame: Add shadow and padding" (#7964)
- "[Xaml/XamlC] Accept prefixed property names of markup extensions" (#5186)
- "[XamlC] Support variance" (#8535)
- "WPF Implement editor placeholder" (#8504)
- Github #3149 - "Master behavior of Popover should be allowed on MacOS desktop" (#8312)
- Github #5680 - "[Enhancement] Add method to force value coercion" (#8097)
- Github #5830 - "[Enhancement] EntryCellTableViewCell should be public" (#8286)
- Github #7540 - "[Enhancement] Include the name of the duplicate element for INameScope.RegisterName" (#8702)
- Github #7667 - "Make SetupLayer on FrameRenderer virtual" (#7871)
- Github #8346 - "[Enhancement] Pre-define DisplayPromptAsync" (#8362)
- Github #9189 - "i wish some day you add “AdaptiveTrigger” of UWP Visual states to xamarin forms too" (#9422) (added in 4.5.0.282-pre4 (4.5.0 Pre Release 4))
Features in Preview
Current experimental flags
Are you on the cutting edge? Try out ALL of our experimental features now using these flags! Read more about experimental flags.
Shell_UWP_Experimental
IndicatorView_Experimental
SwipeView_Experimental
CarouselView_Experimental
MediaElement_Experimental
StateTriggers_Experimental
SwipeView
Try it with Forms.SetFlags("SwipeView_Experimental");
- "[Android, iOS] Improve the swipe threshold used in Execute Mode" (#9217) (added in 4.5.0.187-pre2 (4.5.0 Pre Release 2))
- "[Android] Changes in SwipeView to avoid the use of APIs that require a specific API level" (#9175) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- "[Android] Fix issue automatically closing the SwipeView when scrolling" (#8654) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- "Centered text and icon in SwipeItem" (#8823) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- "Fix SwipeItem cast issue on SwipeView" (#9907) (added in 4.5.0.495 (4.5.0 Service Release 2))
- Github #8753 - "[Bug] Assign custom SwipeItems in the SwipeView" (#8757) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #8767 - "[Bug][iOS] SwipeView SwipeBehaviorOnInvoked RemainOpen issue on iOS" (#9664) (added in 4.5.0.495 (4.5.0 Service Release 2))
- Github #8777 - "[Bug] SwipeView crash if Text not is set on SwipeItem" (#8822) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #8779 - "[Bug][iOS][Android] Entry in custom SwipeItemView can't gain focus" (#8832) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #8781 - "[Bug][iOS] SwipeViewItem rendering issue on iOS" (#8828) (added in 4.5.0.187-pre2 (4.5.0 Pre Release 2))
- Github #8782 - "[Bug][iOS][Android] SwipeViewItems cut off on one or more sides" (#8824) (added in 4.5.0.187-pre2 (4.5.0 Pre Release 2))
- Github #8807 - "[Bug][Android] SwipeView rendering issues with multiple SwipeItems collection" (#8849) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #8973 - "[Bug] SwipeView - no animation when revealing CollectionView items " (#8987) (added in 4.5.0.187-pre2 (4.5.0 Pre Release 2))
- Github #9007 - "[Bug] SwipeView inside SwipeView - not working" (#8653) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #9028 - "[Bug] The Swipe view does not call the command associated to it when tapped" (#9177) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #9030 - "[Bug] ClassNotFoundException when using snap points on API < 23" (#9378) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #9305 - "[Bug] Swipe View BackgroundColor Issues" (#9726) (added in 4.5.0.495 (4.5.0 Service Release 2))
- Github #9329 - "[Bug] Xamarin.Forms SwipeView IsEnabled not working" (#9494) (added in 4.5.0.356 (4.5.0))
- Github #9417 - "XF 4.5 pre2 crashes on Swipe GetSwipeItemSize " (#9464) (added in 4.5.0.495 (4.5.0 Service Release 2))
- Github #9499 - "[Bug][iOS] SwipeView MonoTouchException in iOS 12 in Forms 4.5-pre3" (#9501) (added in 4.5.0.356 (4.5.0))
- Github #9588 - "[Bug] iOS: Frame inside SwipeView can't be swiped" (#9637) (added in 4.5.0.495 (4.5.0 Service Release 2))
- Github #9646 - "[Android] SwipeView items don't fully remove themselves when unrevealed" (#9725) (added in 4.5.0.495 (4.5.0 Service Release 2))
- Github #9738 - "[Enhancement] SwipeViewItem parent is null, shouldn't be" (#9743) (added in 4.5.0.396 (4.5.0 Service Release 1))
CarouselView
Try it with Forms.SetFlags("CarouselView_Experimental");
- "[Android] Fix NRE when setting the VisualState on the default cell" (#9708) (added in 4.5.0.396 (4.5.0 Service Release 1))
- "[iOS] Fix NRE when not using template on CarouselView" (#9676) (added in 4.5.0.356 (4.5.0))
- "[platform] improve perf of PropertyChangedEventArgsExtensions" (#9084)
- "[UWP] Implement CurrentItem on CarouselView" (#7590)
- "[UWP] Make sure to call UpdateInitialPosition on CarouselView" (#10041) (added in 4.5.0.495 (4.5.0 Service Release 2))
- "Move CarouselViewRenderer scrolled overrides to listener" (#9414) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- "The great Androidx IF Def'ing of 2019" (#8898) (added in 4.5.0.187-pre2 (4.5.0 Pre Release 2))
- Github #10019 - "[Bug, UWP] IndicatorCodeGallery - I can't get to the last item." (#10068) (added in 4.5.0.495 (4.5.0 Service Release 2))
- Github #7323 - "[Xamarin.iOS] Deprecated API Usage UIWebView" (#8001)
- Github #7904 - "[Bug] CarouselView doesn't implement the defined visual states" (#8785) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #8198 - "[Bug] ScrollView at CollectionView at RefreshView always leads to Pull-To-Refresh" (#8224)
- Github #8913 - "[Bug][iOS] IndicatorView.IndicatorsShape=Square has no effect on iOS" (#9595) (added in 4.5.0.356 (4.5.0))
- Github #8992 - "[Bug] IndicatorView - ItemsSourceBy not showing up in Intellisense" (#9332) (added in 4.5.0.356 (4.5.0))
- Github #9014 - "[Bug] IndicatorView shows no indicators on UWP" (#9614) (added in 4.5.0.356 (4.5.0))
- Github #9020 - "[Bug] CarouselView Android Can't Scroll Back when Last Item is Reached" (#9700) (added in 4.5.0.396 (4.5.0 Service Release 1))
- Github #9159 - "[Bug] CarouselView IsBounceEnabled=False has no effect on Android" (#9160) (added in 4.5.0.187-pre2 (4.5.0 Pre Release 2))
- Github #9322 - "[Bug] CarouselView's Position doesn't get updated to reflect ObservableCollection.Remove" (#9854) (added in 4.5.0.495 (4.5.0 Service Release 2))
- Github #9583 - "[Bug] iOS CarouselView size not changed if device orientation changed" (#9654) (added in 4.5.0.396 (4.5.0 Service Release 1))
- Github #9666 - "[Bug][iOS] IndicatorView not visible when ItemSource of Carousel is set delayed (INotifyPropertyChanged)" (#9672) (added in 4.5.0.396 (4.5.0 Service Release 1))
MediaElement
Try it with Forms.SetFlags("MediaElement_Experimental");
- "[Tizen] MediaElement control support" (#9634) (added in 4.5.0.396 (4.5.0 Service Release 1))
- "Fix UWP volume, mediasource exception, android position" (#9452) (added in 4.5.0.282-pre4 (4.5.0 Pre Release 4))
- Github #1692 - "[F100] MediaPlayer View" (#9439) (added in 4.5.0.282-pre4 (4.5.0 Pre Release 4))
- Github #9742 - "[Bug] MediaElement crashes on iOS when given a URL and device has no network" (#9746) (added in 4.5.0.396 (4.5.0 Service Release 1))
UWP Shell
Try it with Forms.SetFlags("Shell_UWP_Experimental");
- "[UWP] Enables usage of font image source for bottom bar tabs" (#8354)
- Github #7230 - "[Enhancement] Shell allow dynamic load FlyoutItem!" (#9023)
- Github #8211 - "[Bug] Shell throws NullRef if improperly configured" (#8250)
Dual Screen
- "Don't Init DualScreenService on non duo device" (#9733) (added in 4.5.0.396 (4.5.0 Service Release 1))
- "Fix TPV on UWP platform projects" (#9396) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- "Fix TPV to adjust to native layout changes better" (#9445) (added in 4.5.0.282-pre4 (4.5.0 Pre Release 4))
- "Fixes TPV so it works anywhere on the screen" (#9427) (added in 4.5.0.282-pre4 (4.5.0 Pre Release 4))
- "TPV Additional Samples and event notification changes" (#9487) (added in 4.5.0.282-pre4 (4.5.0 Pre Release 4))
- "TPV API Adjustments" (#9477) (added in 4.5.0.282-pre4 (4.5.0 Pre Release 4))
- "TPV Initial Project Setup" (#9418) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
State Triggers
Try it with Forms.SetFlags("StateTriggers_Experimental");
- "Fixed mistake in StateTriggersExperimental verification" (#9889) (added in 4.5.0.495 (4.5.0 Service Release 2))
DarkMode
- Github #8294 - "[Bug] UIStatusBarStyle does not appear to change when device is in dark mode" (#8791) (added in 4.5.0.187-pre2 (4.5.0 Pre Release 2))
IndicatorView
Try it with Forms.SetFlags("IndicatorView_Experimental");
- Github #8912 - "[Bug] Indicator.MaximumVisible property has no effect" (#9592) (added in 4.5.0.356 (4.5.0))
Release History
- Wednesday, April 1, 2020 - Xamarin.Forms.4.5.0.530 (4.5.0 Service Release 3)
- Wednesday, March 25, 2020 - Xamarin.Forms 4.5.0.495 (4.5.0 Service Release 2)
- Monday, March 16, 2020 - Xamarin.Forms 4.5.0.396 (4.5.0 Service Release 1)
- Wednesday, February 26, 2020 - Xamarin.Forms 4.5.0.356 (4.5.0)
- Monday, February 10, 2020 - Xamarin.Forms 4.5.0.282-pre4 (4.5.0 Pre Release 4)
- Wednesday, February 5, 2020 - Xamarin.Forms 4.5.0.266-pre3 (4.5.0 Pre Release 3)
- Wednesday, January 22, 2020 - Xamarin.Forms 4.5.0.187-pre2 (4.5.0 Pre Release 2)
- Monday, January 13, 2020 - Xamarin.Forms 4.5.0.142-pre1 (4.5.0 Pre Release 1)
Wednesday, April 1, 2020 - Xamarin.Forms.4.5.0.530 (4.5.0 Service Release 3)
Issues Fixed
- Github #8272 - "[Bug] TextDecorations don't work" (#10066)
- Github #9190 - "[Bug] Embedded Fonts Not Recognized" (#9194)
- Github #9255 - "[Bug] ExportFontAttribute has unused properties" (#9194)
- Github #9593 - "When Xamarin.Forms isn't referenced in the head projects, XF build targets aren't imported" (#10125)
- Github #9995 - "custom iOS Renderers won't compile when using MSBuild.Sdk.Extras since 4.5.0.396" (#10125)
Additional fixes included in this release
- "Add equivalent androidx proguard rules" (#10138)
- "Shell hotreload fixes when changing Shell class" (#10064)
Wednesday, March 25, 2020 - Xamarin.Forms 4.5.0.495 (4.5.0 Service Release 2)
Issues Fixed
- Github #10019 - "[Bug, UWP] IndicatorCodeGallery - I can't get to the last item." (#10068)
- Github #5968 - "[Bug] ProgressBar with Visual=Material causing crash on Android 5.0" (#6199)
- Github #6187 - "Visual Material Entry underline color should reference PlaceholderColor" (#8530)
- Github #7534 - "[Bug] Span Label with max lines and BreakMode breaks on large text with paragraph on Android." (#8471)
- Github #7878 - "[Bug] Page not popped on iOS 13 FormSheet swipe down" (#7923)
- Github #7924 - "[Bug] Setting CarouselView.CurrentItem to an item doesn't display that item" (#9854)
- Github #8767 - "[Bug][iOS] SwipeView SwipeBehaviorOnInvoked RemainOpen issue on iOS" (#9664)
- Github #8778 - "[Bug] SwipeViewItem handler invocation intermittent issue on iOS and Android" (#9664)
- Github #8983 - "[Bug] SwipeView - bad responsiveness to touch" (#9664)
- Github #9212 - "[Bug] XAMLC breaks if Binding contains apostrophe " ' " [V4.5.0 Pre Release 1]" (#9850)
- Github #9305 - "[Bug] Swipe View BackgroundColor Issues" (#9726)
- Github #9306 - "[Bug] [iOS] Cannot un-reveal swipe view items on iOS / Inconsistent swipe view behaviour" (#9664)
- Github #9307 - "[Bug]
OnAppearing
does not fire after aUIModalPresentationStyle.FormSheet
Page is Dismissed" (#7923) - Github #9322 - "[Bug] CarouselView's Position doesn't get updated to reflect ObservableCollection.Remove" (#9854)
- Github #9401 - "[Bug] CarouselView don't respect ItemSpacing and/or PeekAreaInsets for new items" (#9854)
- Github #9417 - "XF 4.5 pre2 crashes on Swipe GetSwipeItemSize " (#9464)
- Github #9432 - "[Bug] When selected item is removed from CarouselView ItemsSource, CurrentItem is not changed" (#9854)
- Github #9461 - "[Enhancement] SwipeView Pull To Close" (#9664)
- Github #9588 - "[Bug] iOS: Frame inside SwipeView can't be swiped" (#9637)
- Github #9646 - "[Android] SwipeView items don't fully remove themselves when unrevealed" (#9725)
- Github #9647 - "[Android] SwipeView Shows on the Wrong Item in CollectionView" (#9725)
- Github #9656 - "[Bug] Calls to Styles.CleanUpWeakReferences causes Exceptions." (#9921)
- Github #9694 - "[Bug] Switch control OnColor property breaks application" (#9819)
- Github #9734 - "[Bug] SwipeView in 4.5 works only first way swipped" (#9664)
- Github #9735 - "[Bug] SwipeView broken in 4.5.0.356; creating huge number of overlapping SwipeItemViews on reveal" (#9725)
- Github #9767 - "[Bug] [iOS] NavigationBar resetting TextColor to black at every change of BarBackgroundColor" (#9836)
- Github #9771 - "[Bug] [UWP] Changing CarouselView Position does not change view" (#9854)
- Github #9774 - "[Bug] Xamarin.Forms 4.5 breaks custom frame renderer shadow functionality on iOS" (#10023)
- Github #9783 - "[Bug] DatePicker begin to cause Exception in version 4.5.0-282-pre4 and above in some situations" (#9820)
- Github #9790 - "[Bug] Xamarin.Forms 4.5 ignores iOS status bar colour change" (#9836)
- Github #9801 - "[Bug] Tab.Items.Clear() crashes on 4.5.0.356." (#9940)
- Github #9952 - "[Bug] On<iOS>().SetHideNavigationBarSeparator(true) does not work on Xamarin.Forms latest stable version (4.5.0.356) and latest preview version (4.6.379-pre1)" (#9972)
Additional fixes included in this release
- "[UWP] Make sure to call UpdateInitialPosition on CarouselView" (#10041)
- "[WPF] Dont set Slider.Value if it already matches control" (#9847)
- "[X] register asm in sourceinfo for xamlc" (#10001)
- "Disable EnableTypeInfoReflection for nugets when building for debug" (#9871)
- "Fix SwipeItem cast issue on SwipeView" (#9907)
- "Fixed mistake in StateTriggersExperimental verification" (#9889)
Monday, March 16, 2020 - Xamarin.Forms 4.5.0.396 (4.5.0 Service Release 1)
Issues Fixed
- Github #1658 - "[macOS] GestureRecognizer on ListView Item not working" (#7781)
- Github #8161 - " [Bug] On WPF ToolbarItem.IsEnabled = false does nothing" (#8612)
- Github #8521 - "[Bug] CarouselView IsVisible=false than set to true not work on iOS" (#9654)
- Github #9020 - "[Bug] CarouselView Android Can't Scroll Back when Last Item is Reached" (#9700)
- Github #9171 - "[Bug] DisplayPromptAsync overload hurts usability" (#9749)
- Github #9583 - "[Bug] iOS CarouselView size not changed if device orientation changed" (#9654)
- Github #9609 - "[Bug] iOS CarouselView contents does not resize" (#9654)
- Github #9666 - "[Bug][iOS] IndicatorView not visible when ItemSource of Carousel is set delayed (INotifyPropertyChanged)" (#9672)
- Github #9738 - "[Enhancement] SwipeViewItem parent is null, shouldn't be" (#9743)
- Github #9742 - "[Bug] MediaElement crashes on iOS when given a URL and device has no network" (#9746)
- Github #9748 - "[Bug] Slider broken in 4.5.0.356 on macOS" (#9762)
- Github #9782 - "IsVisible=false isn't working with Frames on iOS" (#9800)
Additional fixes included in this release
- "[Android] Fix NRE when setting the VisualState on the default cell" (#9708)
- "Don't Init DualScreenService on non duo device" (#9733)
- "Ios 2017 compatible Xamarin.Forms.Platform.iOS" (#9760)
Wednesday, February 26, 2020 - Xamarin.Forms 4.5.0.356 (4.5.0)
Issues Fixed
- Github #6804 - "[Bug] Shell SearchHandler - Search text getting lost on execute search" (#8101)
- Github #8103 - "[Bug] Shell,iOS access a disposed object in Shell.TitleView" (#9505)
- Github #8557 - "[Bug] Grouped header with incorrect size when use GridItemsLayout with two columns on the CollectionView" (#8563)
- Github #8912 - "[Bug] Indicator.MaximumVisible property has no effect" (#9592)
- Github #8913 - "[Bug][iOS] IndicatorView.IndicatorsShape=Square has no effect on iOS" (#9595)
- Github #8933 - "[Bug] custom value for IndicatorView.IndicatorSize has no effect on iOS" (#9595)
- Github #8992 - "[Bug] IndicatorView - ItemsSourceBy not showing up in Intellisense" (#9332)
- Github #9014 - "[Bug] IndicatorView shows no indicators on UWP" (#9614)
- Github #9196 - "[Bug] [iOS] CollectionView EmptyView causes the application to crash" (#9575)
- Github #9329 - "[Bug] Xamarin.Forms SwipeView IsEnabled not working" (#9494)
- Github #9371 - "[Bug] FontImage Icon fails on Android in certain situations" (#9506)
- Github #9436 - "[Bug] [iOS] --optimize=experimental-xforms-product-type additional mtouch argument causes app crash" (#9505)
- Github #9483 - "[Bug] iOS Shell - ToolbarItems not updating when using TabBar" (#9628)
- Github #9499 - "[Bug][iOS] SwipeView MonoTouchException in iOS 12 in Forms 4.5-pre3" (#9501)
- Github #9526 - "[Bug] macOS: 4.4->4.5 regression, labels are invisible (same TextColor as background)" (#9589)
- Github #9696 - "Crash on Android with Xamari.Forms 4.5.0.282-pre4 Release builds while using DisplayActionSheet" (#9715)
Additional fixes included in this release
- "[iOS] Fix NRE when not using template on CarouselView" (#9676)
- "[REVERTED] Fix 8503, 8787 - text in Entry not immediately visible, or visible after IsVisible set to true" (#8536)
- "Androidx bump to stable release packages" (#9594)
- "Fix ios url images" (#9682)
- "Propagate cleared shell elements correctly" (#9615)
- "Remove duplicate NS 2.0 on vsmac" (#9612)
- "Revert "Fix 8503, 8787 - text in Entry not immediately visible, or visible after IsVisible set to true"" (#9598)
- Github #0001 - "Added check for null hinge in GetHinge()" (#9678)
Monday, February 10, 2020 - Xamarin.Forms 4.5.0.282-pre4 (4.5.0 Pre Release 4)
Additional fixes included in this release
- "Fix TPV to adjust to native layout changes better" (#9445)
- "Fix UWP volume, mediasource exception, android position" (#9452)
- "Fixes TPV so it works anywhere on the screen" (#9427)
- "TPV Additional Samples and event notification changes" (#9487)
- "TPV API Adjustments" (#9477)
Wednesday, February 5, 2020 - Xamarin.Forms 4.5.0.266-pre3 (4.5.0 Pre Release 3)
Issues Fixed
- Github #6784 - "[Bug] [Shell] [iOS] ShellItem.CurrentItem not set when selecting shell section aggregated in more tab" (#6786)
- Github #7393 - "[Bug] CollectionView problems and crashes with IsGrouped="true"" (#8808)
- Github #7500 - "[Bug] [Android] Async animations can cause hang if animations are disabled" (#8921)
- Github #7904 - "[Bug] CarouselView doesn't implement the defined visual states" (#8785)
- Github #7997 - "[Bug] CarouselView VisibleViews property is always null" (#8785)
- Github #8203 - "CollectionView fires SelectionChanged x (number of items selected +1) times, while incrementing SelectedItems from 0 to number of items each time" (#8737)
- Github #8586 - "[Bug] Tizen Tv - app crashes if collectionview is IsVisible is set to false" (#9367)
- Github #8587 - "[Bug] Tizen Tv - App crashes if CollectionView.EmptyView is set while trying to set ItemsSource to null" (#9367)
- Github #8634 - "[Bug] Android animation issue when device animations are turned off" (#8921)
- Github #8671 - "[Bug] CarouselView - CurrentItem is not binded properly when switching pages programmatically" (#8785)
- Github #8700 - "[Bug] [Android] CollectionView don't set BindingContext in Header" (#9361)
- Github #8777 - "[Bug] SwipeView crash if Text not is set on SwipeItem" (#8822)
- Github #8779 - "[Bug][iOS][Android] Entry in custom SwipeItemView can't gain focus" (#8832)
- Github #8807 - "[Bug][Android] SwipeView rendering issues with multiple SwipeItems collection" (#8849)
- Github #8899 - "Clearing CollectionView IsGrouped="True" crashes application iOS & UWP" (#9287)
- Github #9007 - "[Bug] SwipeView inside SwipeView - not working" (#8653)
- Github #9028 - "[Bug] The Swipe view does not call the command associated to it when tapped" (#9177)
- Github #9030 - "[Bug] ClassNotFoundException when using snap points on API < 23" (#9378)
- Github #9087 - "[Bug] Collection View items don't load bindable properties values inside OnElementChanged" (#9273)
- Github #9092 - "[Bug] GTK: reenabling button doesn't work if page is a not-initial NavigationPage" (#9201)
- Github #9108 - "iOS SwipeViewRenderer NullReferenceException When SwipeItem.Text is Null" (#8822)
- Github #9271 - "SwipeItem Crash in iOS when Text = null" (#8822)
- Github #9335 - "[Bug] Xamarin Forms crashes on UWP when inheriting from a base page" (#9350)
- Github #9344 - "[Bug][Shell] Shell pass data navigation failure with Xaminals in 4.5-pre2" (#9348)
- Github #9355 - "[Bug] System.ObjectDisposedException with Xamarin.Forms.Platform.Android.ScrollViewRenderer" (#9383)
Additional fixes included in this release
- "[Android] Changes in SwipeView to avoid the use of APIs that require a specific API level" (#9175)
- "[Android] Fix issue automatically closing the SwipeView when scrolling" (#8654)
- "Bump WinUI Nuget version if you are using Min target >= 16299" (#9132)
- "Centered text and icon in SwipeItem" (#8823)
- "Embed templates" (#9225)
- "Fix nuspec to copy xaml files from obj directory" (#9395)
- "Fix TPV on UWP platform projects" (#9396)
- "Fix UWP Nuspec to copy correct NS version" (#9388)
- "Make create shell table view controller virtual" (#9327)
- "Move CarouselViewRenderer scrolled overrides to listener" (#9414)
- "Propagate BindingContext to ItemsLayout" (#9221)
- "Remove uses of deprecated KeyWindow" (#9334)
- "TPV Initial Project Setup" (#9418)
- Github #8753 - "[Bug] Assign custom SwipeItems in the SwipeView" (#8757)
Wednesday, January 22, 2020 - Xamarin.Forms 4.5.0.187-pre2 (4.5.0 Pre Release 2)
Issues Fixed
- Github #2172 - "Height of Entry with data binding incorrect on UWP when Entry in ScrollView in Grid" (#8214)
- Github #2678 - "StyleSheets - Updating StyleClass at runtime has no effect" (#9157)
- Github #5168 - "[Core] Incorrect increments in Stepper" (#7383)
- Github #5596 - "[iOS] Previous page's toolbar item being grayed out when canceling swipe to previous page then navigating back." (#8454)
- Github #5711 - "Layout issue with Entry" (#8214)
- Github #7862 - "[Bug] Live Unit Testing Fails Build" (#7925)
- Github #7992 - "Datepicker is not opened when we call Datepicker.Focus() in UWP" (#8056)
- Github #8294 - "[Bug] UIStatusBarStyle does not appear to change when device is in dark mode" (#8791)
- Github #8781 - "[Bug][iOS] SwipeViewItem rendering issue on iOS" (#8828)
- Github #8782 - "[Bug][iOS][Android] SwipeViewItems cut off on one or more sides" (#8824)
- Github #8973 - "[Bug] SwipeView - no animation when revealing CollectionView items " (#8987)
- Github #9159 - "[Bug] CarouselView IsBounceEnabled=False has no effect on Android" (#9160)
Additional fixes included in this release
- "[Android, iOS] Improve the swipe threshold used in Execute Mode" (#9217)
- "[android/ios] improve perf when not using Application.Properties" (#8887)
- "[android] remove the Anticipator for 4.5.0 and master" (#9226)
- "[Core] performance improvements around bindings" (#9114)
- "Apply cecil fixes to make packages 2017 compatible" (#9145)
- "The great Androidx IF Def'ing of 2019" (#8898)
Monday, January 13, 2020 - Xamarin.Forms 4.5.0.142-pre1 (4.5.0 Pre Release 1)
Issues Fixed
- Github #2136/Bugzilla 45723 - "Entry / Editor and a Button. Tapping the button dismisses the keyboard" (#8740)
- Github #3332 - "[Android] Memory leak in MasterDetailPage" (#8745)
- Github #3742 - "Memory leak in the Navigation Page on Android" (#8745)
- Github #3798 - "[Android] SeparatorColor of ListView is NOT updated dynamically" (#8085)
- Github #3959 - "[UWP] ListView GroupHeaderTemplate Has minimum height" (#8010)
- Github #4606 - "[Android] ImageButton on android is not clipping view to corner radius" (#7723)
- Github #4744 - "forms in UWP show empty button for DisplayActionSheet" (#8445)
- Github #4854 - "[macOS] Visual glitch when exiting the full screen with ScrollViewer" (#8086)
- Github #4880 - "Text not shown as it should Xamarin.Forms.GTK" (#8473)
- Github #5108 - "Frame with a shadow on iOS adds a shadow to the contents" (#7518)
- Github #5367 - "Crash assigning excessively long text to Editor with MaxLength property set" (#8052)
- Github #5749 - "Disable horizontal scroll in the custom listview in android" (#8105)
- Github #5910 - "[Bug]
IsClippedToBounds
doesn't update clip rectangle when maximizing WPF window" (#8195) - Github #6384 - "[Bug] [iOS] content page in tabbed page not showing inside shell tab" (#7532)
- Github #6556 - "[Bug] Button.CornerRadius doesn't work on WPF" (#7895)
- Github #6693 - "[Bug] [WPF] ViewRenderer does not work properly with FrameworkElement derived native controls " (#8357)
- Github #6905 - "[Bug] XAML parser cannot parse nested markup extension as positional argument" (#8980)
- Github #6996 - "[Bug] Color of FontImageSource dynamic resource is useless" (#8063)
- Github #7181 - "[Bug] Cannot update ToolbarItem text and icon" (#8254)
- Github #7323 - "[Xamarin.iOS] Deprecated API Usage UIWebView" (#8001)
- Github #7396 - "[Bug] Shell: Setting Shell.BackgroundColor overrides all colors of TabBar" (#7962)
- Github #7400 - "[Bug] [Android] MainPage not changing in OnResume" (#7477)
- Github #7416 - "[Bug] Crash In ShellSectionRootHeader with scrollable top tabs" (#7884)
- Github #7709 - "[Bug] On android, not showing keyboard when changing placeholder in entry focused event" (#7984)
- Github #7772 - "[Bug] Device.Idiom reports TargetIdiom.Phone for Amazon Fire TV Stick 4K" (#7933)
- Github #7995 - "[Bug] WPF ListViewRenderer fails on item tapped with empty item source" (#8223)
- Github #8087 - "[XAMARIN-FORMS-WPF] View doesn't render when set IsClippedToBounds to true" (#8195)
- Github #8156 - "[Bug] [iOS] Label with HTML does not replace Umlaut characters properly" (#8265)
- Github #8198 - "[Bug] ScrollView at CollectionView at RefreshView always leads to Pull-To-Refresh" (#8224)
- Github #8211 - "[Bug] Shell throws NullRef if improperly configured" (#8250)
- Github #8278 - "[Bug] StackOverflowException in UWP ListViewRenderer" (#8299)
- Github #8345 - "[Bug] CollectionView ItemSpacing does not affect the Item spacing on iOS" (#8872)
- Github #8469 - "[Bug] FontImageSourse doesn't work on macOS" (#8590)
- Github #8593 - "[Bug] FontImageSourse doesn't work on GTK" (#8627)
- Github #8633 - "[Bug] NuGet version conflict between Xamarin.Froms.Maps and Microsoft.AppCenter.Push" (#7660)
- Github #9070 - "[Bug] UITabBar.Appearance.SelectedImageTintColor not working in Xamarin Forms project" (#9082)
Additional fixes included in this release
- "[Android] Fix some issues in UITests" (#8764)
- "[Android] Fix some views dispose" (#8703)
- "[Android] ListViewRenderer - Better dispose" (#8705)
- "[Android] MasterDetailPageRenderer - Add guard and add missing unsubscribe" (#8704)
- "[iOS] Reduce casting and repeat math during BoxView drawing" (#9008)
- "[platform] improve perf of PropertyChangedEventArgsExtensions" (#9084)
- "[previewer] removed empty ItemsSource attribute from toolbox snippets" (#8379)
- "[REVERTED] Return all visual elements needed" (#8100)
- "[Xaml] Throw XamlParseException in MarkupExpressionParser.GetNextPiece" (#8447)
- "[XamlC] Dispose assembly resolver constructed by XamlCTask" (#8397)
- "Fix cross-thread exception when finalizing ButtonRenderer" (#9010)
- "Fix reflection call on UWP" (#8636)
- "Stop Frame shadow from blocking user input on iOS" (#8991)
- "Stop the linker from killing off the Deserializer" (#8962)
- "Use correct reference frame for gesture origin recognition" (#6615)
- "WPF GTK Set flags" (#8446)
Known Issues
- Github #10093 - "[Bug] iOS NavigationBar not applying gradient in custom renderer anymore (via SetBackgroundImage)."
- Github #9980 - "Xamarin.Forms iOS VS Windows Previewer Errors on 4.5.0.396+"
- Github #9775 - "[Bug] Xamarin.Forms 4.5 custom navigation renderer doesn't set font"
- Github #9765 - "[Bug] UINavigationBar.Appearance.BarTintColor not working when update 4.5 version"
- Github #9756 - "[Bug] [UWP] DisplayAlert renders all controls disabled on a page"
- Github #9755 - "Issue updating the package to 4.5.0.356 (Forms with Map)"
- Github #9606 - "[Bug] [UWP] DisplayAlertAsync doesn't work in 4.5 pre 4"
- Github #9555 - "[Bug][iOS] Applying an Effect to Frame adds a shadow "
- Github #9456 - "[Bug] navPage.SetHideNavigationBarSeparator(true) no longer works."
- Github #9339 - "[Bug][Android] SearchBar rendering issue in 4.5-pre2 on API 28"
- Github #9190 - "[Bug] Embedded Fonts Not Recognized"
- Github #8567 - "[Bug, iOS] Frame shadow layer not properly removed "
Breaking Changes
- Github #4606 - "[Android] ImageButton on android is not clipping view to corner radius" (#7723)
Namespace Xamarin.Forms
Type Changed: Xamarin.Forms.CarouselView
Removed field:
public static const string VisibleItemVisualState = "VisibleItem";
Modified properties:
-public System.Collections.Generic.List<View> VisibleViews { get; }
+public System.Collections.ObjectModel.ObservableCollection<View> VisibleViews { get; }
Removed methods:
public void SetCurrentItem (object item);
Type Changed: Xamarin.Forms.IImageElement
Removed method:
public virtual void OnImageSourcesSourceChanged (object sender, System.EventArgs e);
Type Changed: Xamarin.Forms.IndicatorView
Removed field:
public static BindableProperty ItemsSourceByProperty;
Removed methods:
public static VisualElement GetItemsSourceBy (BindableObject bindable);
public static void SetItemsSourceBy (BindableObject bindable, VisualElement value);
Type Changed: Xamarin.Forms.Page
Modified methods:
public System.Threading.Tasks.Task<string> DisplayPromptAsync (string title, string message, string accept--- = "OK"---, string cancel--- = "Cancel"---, string placeholder--- = "NULL"---, int maxLength--- = -1---, Keyboard keyboard--- = NULL---)
Type Changed: Xamarin.Forms.Shell
Modified methods:
public System.Threading.Tasks.Task GoToAsync (ShellNavigationState state, bool animate--- = true---)
Namespace Xamarin.Forms.Internals
Type Changed: Xamarin.Forms.Internals.Profile
Removed methods:
public static void FrameBegin (string name, string id, int line);
public static void FrameEnd ();
Type Changed: Xamarin.Forms.Internals.PromptArguments
Modified constructors:
public PromptArguments (string title, string message, string accept--- = "OK"---, string cancel--- = "Cancel"---, string placeholder--- = "NULL"---, int maxLength--- = -1---, Xamarin.Forms.Keyboard keyboard--- = NULL---)
Namespace Xamarin.Forms.Platform.Android
Type Changed: Xamarin.Forms.Platform.Android.AccessibilityExtensions
Removed method:
public static string SetNavigationContentDescription (this Android.Support.V7.Widget.Toolbar Control, Xamarin.Forms.Element Element, string _defaultNavigationContentDescription);
Type Changed: Xamarin.Forms.Platform.Android.BottomNavigationViewUtils
Removed methods:
public static Android.Support.Design.Widget.BottomSheetDialog CreateMoreBottomSheet (System.Action<System.Int32,Android.Support.Design.Widget.BottomSheetDialog> selectCallback, Android.Content.Context context, System.Collections.Generic.List<System.ValueTuple<System.String,Xamarin.Forms.ImageSource,System.Boolean>> items);
public static void SetShiftMode (this Android.Support.Design.Widget.BottomNavigationView bottomNavigationView, bool enableShiftMode, bool enableItemShiftMode);
Type Changed: Xamarin.Forms.Platform.Android.CarouselViewRenderer
Removed methods:
public override void OnScrollStateChanged (int state);
Type Changed: Xamarin.Forms.Platform.Android.PageExtensions
Removed methods:
[Obsolete ("ContentPage.CreateFragment() is obsolete as of version 3.2. Please use ContentPage.CreateSupportFragment() instead.")]
public static Android.App.Fragment CreateFragment (this Xamarin.Forms.ContentPage view, Android.Content.Context context);
Type Changed: Xamarin.Forms.Platform.Android.Resource
Type Changed: Xamarin.Forms.Platform.Android.Resource.Drawable
Removed fields:
public static int avd_hide_password_1;
public static int avd_hide_password_2;
public static int avd_hide_password_3;
public static int avd_show_password_1;
public static int avd_show_password_2;
public static int avd_show_password_3;
Type Changed: Xamarin.Forms.Platform.Android.SwipeViewRenderer
Modified methods:
-public override bool OnInterceptTouchEvent (Android.Views.MotionEvent ev)
+public override bool OnInterceptTouchEvent (Android.Views.MotionEvent e)
Deprecations
- Github #8346 - "[Enhancement] Pre-define DisplayPromptAsync" (#8362)
API Changes
See all API Changes here.
- "Custom/Embedded fonts" (#6013)
- Github #7135 - "[Enhancement] Add platform specific property to set the iOS UITabBar Translucent property to false" (#7315)
- Github #7500 - "[Bug] [Android] Async animations can cause hang if animations are disabled" (#8921) (added in 4.5.0.266-pre3 (4.5.0 Pre Release 3))
- Github #7667 - "Make SetupLayer on FrameRenderer virtual" (#7871)
- Github #9171 - "[Bug] DisplayPromptAsync overload hurts usability" (#9749) (added in 4.5.0.396 (4.5.0 Service Release 1))
Blogs
Thank you
Thank you to our community for helping to make Xamarin.Forms even better!
This release, we received amazing contributions from these individuals. Give them a big round of applause!
Author | Commit | PR |
---|---|---|
Akihiko Odaki (@akihikodaki) | Add a missing '}' in Xamarin.Forms.Xaml.UnitTests/Issues/Bz24485.xaml (#8448) | #8448 |
Akihiko Odaki (@akihikodaki) | [Xaml] Throw XamlParseException in MarkupExpressionParser.GetNextPiece (#8447) | #8447 |
Akihiko Odaki (@akihikodaki) | [XamlC] Support variance (#8535) | #8535 |
Akihiko Odaki (@akihikodaki) | [Xaml[C]] Accept prefixed property names of markup extensions (#5186) | #5186 |
Akihiko Odaki (@akihikodaki) | [XamlC] Dispose assembly resolver constructed by XamlCTask (#8397) | #8397 |
Akihiko Odaki (@akihikodaki) | [Xaml] Create value from positional argument text of markup extension (#8980) | #8980 |
Alexander Olshansky (@NordAlex) | Fix 7709 - Fix showing keyboard when changing placeholder in entry focused event (#7984) | #7984 |
Andrei (@AndreiMisiukevich) | [Enhancement] Add platform specific property to handle iOS UITabBar Translucent property (#7315) | #7315 |
Andrei (@AndreiMisiukevich) | fixes https://github.com/xamarin/Xamarin.Forms/issues/9499 (#9501) | #9501 |
Andrei (@AndreiMisiukevich) | fixes https://github.com/xamarin/Xamarin.Forms/issues/9526 (#9589) fixes #9526 | #9589 |
Andrei (@AndreiMisiukevich) | fixes #9748 (#9762) | #9762 |
Andrei (@AndreiMisiukevich) | fixes #9782 (#9800) | #9800 |
Artem (@artemious7) | fix for #8564 (#9320) fixes #8564 | #9320 |
Artem (@artemious7) | fixes #6679 [Bug] WebView UWP not displaying (#9390) | #9390 |
beeradmoore (@beeradmoore) | UIStatusBarStyle now changes correctly when a device is in dark mode (#8791) | #8791 |
Bob Weinand (@bwoebi) | Use correct reference frame for gesture origin recognition (#6615) | #6615 |
Brian Macomber (@bmacombe) | Typo Fix and change to nameof (#8942) fixes #8935 | #8942 |
Brian Macomber (@bmacombe) | Fixes 7992 Changes UWP DatePicker to show the picker flyout on DatePickerFocus() (#8056) | #8056 |
Brian Macomber (@bmacombe) | [UWP] Attempt to resolve entry on UWP not correctly calculating the correct height when in a scroll view (#8214) | #8214 |
Chase Marsh (@ChaseMarsh) | Fix 6693 - [Bug] [WPF] ViewRenderer does not work properly with FrameworkElement derived native controls (#8357) | #8357 |
Christopher Dresel (@Dresel) | Use the MoreNavigationController DidShowViewController callback for shell sections (#6786) | #6786 |
CleanCodeDeveloper (@CleanCodeDeveloper) | [UWP] Enables usage of font image source for bottom bar tabs (#8354) | #8354 |
Clifford Agius (@CliffAgius) | Fixed the rounding issue when the stepper value is incremented. (#7383) | #7383 |
Daniel Gatto (@dmariogatto) | Fix text cleared on search execute (#8101) fixes #6804 | #8101 |
David Eisler (@EislerDavid) | Add null check in UpdateFlowDirection (#9148) | #9148 |
Durgesh Khandal (@techduggu) | Fixed 5680 - Added method to force value coercion (#8097) | #8097 |
Durgesh Khandal (@techduggu) | Fixed - 5830 - Updated access modifier for EntryCellTableViewCell (#8286) fixes #5830 | #8286 |
Durgesh Khandal (@techduggu) | Fixed 5749 - Issue with disabling horizontal scroll on Android (#8105) | #8105 |
Durgesh Khandal (@techduggu) | Fix #3798 - [Android] SeparatorColor of ListView is NOT updated dynamically (#8085) fixes #3798 | #8085 |
Durgesh Khandal (@techduggu) | Fixed 8211 - Handled NullRef in Shell if incorrectly-configured (#8250) | #8250 |
Felipe Baltazar (@felipebaltazar) | Fix Bug 7396 - Shell: Setting Shell.BackgroundColor overrides all colors of TabBar (#7962) | #7962 |
Felipe Baltazar (@felipebaltazar) | Fixe issue 5367 - Crash assigning excessively long text to Editor with MaxLength property set (#8052) fixes #5367 | #8052 |
Felipe Baltazar (@felipebaltazar) | Fix 7181 - [Bug] Cannot update ToolbarItem text and icon (#8254) fixes #7181 | #8254 |
Glenn Versweyveld (@Depechie) | Let UICollectionViewCell handle state itself (#7884) | #7884 |
Glenn Versweyveld (@Depechie) | Add ListViewHeaderItemMinHeight override in UWP resources.xaml (#8010) | #8010 |
Glenn Versweyveld (@Depechie) | Check for ValueType items to perform equals (#8299) | #8299 |
Glenn Versweyveld (@Depechie) | Return all visual elements needed (#8100) fixes #7027 | #8100 |
Joe Manke (@jcmanke) | [Android Maps] Check for location permissions when IsShowingUser=true (#7282) fixes #4691 | #7282 |
Joe Manke (@jcmanke) | [iOS] Add UpdateMode platform-specific to DatePicker and TimePicker (#8048) | #8048 |
Johann Weiher (@Suplanus) | macOS: Fixed IsPresented PopOver (#8312) | #8312 |
Jon Robinson Levy (@WayaFlyfeather) | Fix 8784 [UWP] Avoid Placeholder text overlapping Search Icon in SearchBar (#9150) fixes #8784 | #9150 |
Jon Robinson Levy (@WayaFlyfeather) | Fix 8503, 8787 - text in Entry not immediately visible, or visible after IsVisible set to true (#8536) | #8536 |
Jonathan Goldberger (@jgold6) | [Android] Visual Material Underline color should match placeholder color (#8530) fixes #6187 | #8530 |
Kangho Hur (@rookiejava) | [Tizen] Supports Custom/Embedded and System fonts (#9138) | #9138 |
Kangho Hur (@rookiejava) | [Tizen] MediaElement control support (#9634) | #9634 |
Kevin Petit (@kvpt) | Call the application OnResume, on Android Resume instead of Restart. (#7477) Fixes #7400 | #7477 |
Kevin Petit (@kvpt) | [Android] Better ListViewRenderer dispose (#8705) | #8705 |
Kevin Petit (@kvpt) | [Android] Add guard and add missing unsubscribe on MasterDetailPageRenderer (#8704) | #8704 |
Kevin Petit (@kvpt) | [Android] Fix various memory leaks (#8745) fixes #3332 fixes #3742 | #8745 |
Kevin Petit (@kvpt) | [Android] Fix some issues in UITests (#8764) | #8764 |
Kevin Petit (@kvpt) | [Android] Fix view dispose (#8703) | #8703 |
Kevin Petit (@kvpt) | [Android] Refresh main page on activity resume if main page has been changed when activity was paused (#9257) fixes #9093 fixes #5236 | #9257 |
Kevin Petit (@kvpt) | [Android] Add dispose check to prevent crash (#9383) fixes #9355 | #9383 |
Kevin Petit (@kvpt) | [Android] Properly unsubscribe ToolbarItem on removal (#9485) fixes #9419 | #9485 |
Konrad Müller (@krdmllr) | [macOS] Implement slider min/max/thumb color (#8098) | #8098 |
Konrad Müller (@krdmllr) | [WPF] Frame: Add shadow and padding (#7964) | #7964 |
Leo Mehlig (@leoMehlig) | Fixes Bug with TabbedPage pushed onto Shell (#7532) fixes #6384 | #7532 |
MagicAndre1981 (@MagicAndre1981) | possible fix for Issue 7772 (#7933) | #7933 |
Mateus Luiz Camilo (@MathewLC) | [Android] Prevent to breaking when spans have paragraph ('\n' character) (#8471) fixes #7534 | #8471 |
melimion (@melimion) | Scrolled event implemented (#8197) | #8197 |
melimion (@melimion) | Fix Button.CornerRadius doesn't work on WPF (#7895) | #7895 |
melimion (@melimion) | WPF Implement editor placeholder (#8504) | #8504 |
melimion (@melimion) | macOS toolbar improvements (#8146) | #8146 |
melimion (@melimion) | [WPF] Fix ToolbarItem.IsEnabled = false does nothing (#8612) | #8612 |
melimion (@melimion) | [macOS] Fix GestureRecognizer on ListView Item not working (#7781) fixes #1658 | #7781 |
Mohamed CHOUCHANE (@mohachouch) | [WPF] View doesn't render when set IsClippedToBounds to true (#8195) | #8195 |
Oliver Brown (@GalaxiaGuy) | [iOS] [macOS] Fix HTML string encoding (#8265) | #8265 |
Oliver Brown (@GalaxiaGuy) | [macOS] Add character spacing to button and label (#8206) | #8206 |
Pieter Nijs (@PieEatingNinjas) | iOS: Frame with HasShadow set to true and BackgroundColor alpha < 1 casts shadow on all child views (#7518) | #7518 |
Ravinder Jangra (@ravinderjangra) | Fix back icon color for the navigation page (#7365) fixes #5177 | #7365 |
Sanya Andreichuk (@sanyandreichuk) | Force a redraw for right toolbar items. (#8454) | #8454 |
Sławomir Kulików (@slakul) | [macOS] Visual glitch when exiting the full screen with ScrollViewer (#8086) fixes #4854 | #8086 |
sung-su.kim (@sung-su) | Fix 8586 8587 - [Tizen] Added guard for CollectionView (#9367) fixes #8586 #8587 | #9367 |
Todd (@thenderson21) | Fix to double escaping. (#8473) | #8473 |
Tushar Koshti (@07101994) | [Core] Removed null values from the DisplayActionSheet (#8445) fixes #4744 | #8445 |
VladislavAntonyuk (@VladislavAntonyuk) | [Bug] WPF ListViewRenderer fails on item tapped with empty item source #7995 (#8223) | #8223 |
VladislavAntonyuk (@VladislavAntonyuk) | [Bug] FontImageSourse doesn't work on macOS (#8590) fixes #8469 | #8590 |
VladislavAntonyuk (@VladislavAntonyuk) | WPF GTK Set flags (#8446) | #8446 |
VladislavAntonyuk (@VladislavAntonyuk) | [Bug] FontImageSourse doesn't work on GTK fixes #8593 (#8627) | #8627 |
Youssef Victor (@Youssef1313) | Remove private modifier (#8631) | #8631 |
Yuriy Holembyovskyy (@yurkinh) | fixes #9952 On<iOS>().SetHideNavigationBarSeparator(true) does not work on Xamarin.Forms latest stable version (4.5.0.356) (#9972) | #9972 |
Yuriy Holembyovskyy (@yurkinh) | Add MaskToBounds property to clip a layer’s contents (#10023) fixes #9265, #9774 | #10023 |
z3ut (@z3ut) | [GTK] Fix button shrinking (#9201) fixes #9092 | #9201 |
Feedback welcome
Your feedback is important to us. If there are any problems with this release, check the Xamarin.Forms Forums and GitHub for existing issues. Report new issues and suggestions on GitHub.
Open Source
Xamarin.Forms 4.5.0 is based on the open-source Xamarin.Forms repository: