Xamarin.Forms 2.3.3.163-pre3

Build native UIs for iOS, Android, and Windows Phone from a single, shared C# codebase

This is a prerelease version of Xamarin.Forms.
Install-Package Xamarin.Forms -Version 2.3.3.163-pre3
dotnet add package Xamarin.Forms --version 2.3.3.163-pre3
paket add Xamarin.Forms --version 2.3.3.163-pre3
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

### Important notes

* Xamarin.Forms 2.3.3 depends on a Xamarin installation of Cycle 8. Users upgrading from Xamarin.Forms 2.3.2 (or earlier) will experience numerous compile errors if they attempt to build without first upgrading their Xamarin installation.
* When upgrading Xamarin.Forms take care not to simply "update all" as that will update the Xamarin.Android.Support packages to an incompatible version. More info [here](https://developer.xamarin.com/guides/xamarin-forms/troubleshooting/).
* In 2.3.3 we are deprecating Classic support (More info [here](https://developer.xamarin.com/guides/cross-platform/macios/unified/)).

# 2.3.3-pre3

## Bug Fixes
* [44129](https://bugzilla.xamarin.com/show_bug.cgi?id=44129) - "[Forms Android] Removing and adding items to TabbedPage BindingContext crashes the app when VM uses MvvmLight property Set()-method" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/453))
* [44166](https://bugzilla.xamarin.com/show_bug.cgi?id=44166) - "41166 - Fix MasterDetailPage/NavigationPage leaks on iPad" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/426))
* [44596](https://bugzilla.xamarin.com/show_bug.cgi?id=44596) - "Grey/Blank Screen when switching MainPage to MasterDetail with TabbedPage" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/421))
* [45010](https://bugzilla.xamarin.com/show_bug.cgi?id=45010) - "[2.3.3] 45010 – Forms Sample "WorkingWithListview" throw exception with WinPhone8.1" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/416))
* [44166](https://bugzilla.xamarin.com/show_bug.cgi?id=44166) - "MasterDetailPage instances do not get disposed upon GC; instance accumulation crashes app with OOM error using Forms 2.3.2.118-pre1 and AppCompat" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/412))
* Don't unsubscribe/resubscribe the listener to the same INPC ([PR](https://github.com/xamarin/Xamarin.Forms/pull/384))
* [44886](https://bugzilla.xamarin.com/show_bug.cgi?id=44886) - "UWP Listview ItemSelected event triggered twice for each selection" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/402))
* [iOS] Fixes KVO native binding ([PR](https://github.com/xamarin/Xamarin.Forms/pull/403))
* Make CreateNativeControl virtual instead of abstract ([PR](https://github.com/xamarin/Xamarin.Forms/pull/406))
* [43993](https://bugzilla.xamarin.com/show_bug.cgi?id=43993) - "iOS: ListView size does not return to normal after keyboard disappears" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/333
))
* [39768](https://bugzilla.xamarin.com/show_bug.cgi?id=39768) - "PanGestureRecognizer sometimes won't fire completed event when dragging very slowly" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/389))
* [42602](https://bugzilla.xamarin.com/show_bug.cgi?id=42602) - "Custom BoxView Renderer Does Not Render All Its Children Elements" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/322))
* [Xaml] Xaml native views and bindings for WP8.1 ([PR](https://github.com/xamarin/Xamarin.Forms/pull/363))
* [XamlC] Compiled converters ([PR](https://github.com/xamarin/Xamarin.Forms/pull/358))
* [Xaml] allow compatible arguments for x:Factory ([PR](https://github.com/xamarin/Xamarin.Forms/pull/382))
* [XAMLC] specify type and default value for native bindings ([PR](https://github.com/xamarin/Xamarin.Forms/pull/376))
* [2.3.3-pre2] [XamlC] supports enum and consts in x:Static ([PR](https://github.com/xamarin/Xamarin.Forms/pull/369))
* Reuse Handler when invoking on main thread ([PR](https://github.com/xamarin/Xamarin.Forms/pull/383))

# 2.3.3-pre2

Nuget package [here]().

## New Features

#### Support native view declaration in Xaml, and native Bindings

The following Xaml is valid, and works as expected:

```
<?xml version="1.0" encoding="UTF-8"?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:ios="clr-namespace:UIKit;assembly=Xamarin.iOS;targetPlatform=iOS"
xmlns:androidWidget="clr-namespace:Android.Widget;assembly=Mono.Android;targetPlatform=Android"
xmlns:formsandroid="clr-namespace:Xamarin.Forms;assembly=Xamarin.Forms.Platform.Android;targetPlatform=Android"
xmlns:win="clr-namespace:Windows.UI.Xaml.Controls;assembly=Windows, Version=255.255.255.255, Culture=neutral, PublicKeyToken=null, ContentType=WindowsRuntime;targetPlatform=Windows"
      x:Class="Xamarin.Forms.Controls.XamlNativeViews">
<ContentPage.Content>
<ios:UILabel Text="{Binding NativeText}" View.HorizontalOptions="Start"/>
<androidWidget:TextView Text="{Binding NativeText}" x:Arguments="{x:Static formsandroid:Forms.Context}" />
<win:TextBlock Text="Foo"/>
</ContentPage.Content>
</ContentPage>
```

- native views are automagically wrapped into the appropriate wrapper
- xmlns  defined on a non-matching targetPlatform (see TargetPlatform enumeration) are ignored
- you can bind to property of native views. A proxy is created on the fly for supporting 2-Way bindings if possible. If the native property doesn't implements INPC, or support Observable (on iOS), or is a DependencyProperty (on UWP), you can pass an `UpdateSourceEventName` parameter to the binding expression.
- if you set, or bind to, attached BindableProperty to a native view that will be wrapped in a X.F.View, those property values and binding are transferred to the wrapper. See HorizontalOptions in the sample above.


#### Platform Specifics
*Introducing Platform Specifics!* Features or behaviors that apply to one platform only can now be implemented without requiring custom renderers. These new features/behaviors can then be accessed easily via a fluent code API or XAML.

Vendors can easily add their own Platform Specifics by attaching Effects to them (see [63a924d](https://github.com/xamarin/Xamarin.Forms/commit/63a924d) and [1f9482e](https://github.com/xamarin/Xamarin.Forms/commit/1f9482e4b5969f19fcde5c691443fcccc848c54e) for complete example).

This feature implements the framework that enables the new API and also includes several examples of platform specific features, which can be previewed using the Platform Specifics gallery page:

* Blur support for any VisualElement on iOS
* Translucent navigation bar on iOS
* Partially collapsed navigation bar (with icons!) on MasterDetailPage on Windows
* Toolbar placement options on Windows
* AdjustResize/AdjustPan on Android (known issue: AdjustResize disables status bar color)

## Bug Fixes
* [32733](https://bugzilla.xamarin.com/show_bug.cgi?id=32733) - "32733 – Switching Activity crash in 1.4.4.6392" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/286))
* [35132](https://bugzilla.xamarin.com/show_bug.cgi?id=35132) - "35132 – Pages are not collected when using a Navigationpage"
* [39768](https://bugzilla.xamarin.com/show_bug.cgi?id=39768) - "PanGestureRecognizer sometimes won't fire completed event when dragging very slowly" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/313))
* [39908](https://bugzilla.xamarin.com/show_bug.cgi?id=39908) - "Back button hit quickly results in jumbled pages" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/291))
* [41463](https://bugzilla.xamarin.com/show_bug.cgi?id=41463) - "CarouselView Crashes with "Sequence Does not Contain a Matching Element""
* [42061](https://bugzilla.xamarin.com/show_bug.cgi?id=42061) - "App crashes when registering an app link entry with invalid thumbnail url" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/299))
* [42112](https://bugzilla.xamarin.com/show_bug.cgi?id=42112) - "42112 - CarouselView throws error on Android while moving"
* [42341](https://bugzilla.xamarin.com/show_bug.cgi?id=42341) - "Page not removed from NavigationStack when hit Back quickly on iOS" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/291))
* [42519](https://bugzilla.xamarin.com/show_bug.cgi?id=42519) - "Text Truncation in UWP"
* [42697](https://bugzilla.xamarin.com/show_bug.cgi?id=42697) - "Slow swipe - System.InvalidOperationException: Sequence contains more than one element [CarouselView]"
* [43230](https://bugzilla.xamarin.com/show_bug.cgi?id=43230) - "DisplayAlert returns unexpected value when Escape key hit on UWP" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/292))
* [43328](https://bugzilla.xamarin.com/show_bug.cgi?id=43328) - "DisplayActionSheet() double-tap NullReferenceException crash Win8.1" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/305))
* [43354](https://bugzilla.xamarin.com/show_bug.cgi?id=43354) - "Button IsEnabled binding is position dependent" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/308))
* [43450](https://bugzilla.xamarin.com/show_bug.cgi?id=43450) - "Faulty syntax of Grid.RowDefinition wasn't caught with XamlC"
* [43516](https://bugzilla.xamarin.com/show_bug.cgi?id=43516) - "[UWP] Changing FontAttribute on a label to NONE changes font size as well" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/325))
* [43530](https://bugzilla.xamarin.com/show_bug.cgi?id=43530) - "[Android] Resuming app throws IllegalStateException from fragment manager"
* [43726](https://bugzilla.xamarin.com/show_bug.cgi?id=43726) - "Setting TabbedPage.ItemsSource to Null Causes Crash" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/320))
* [43774](https://bugzilla.xamarin.com/show_bug.cgi?id=43774) - "Appearing does not trigger for the first time for Tabpages in Android" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/328))
* [43892](https://bugzilla.xamarin.com/show_bug.cgi?id=43892) - "Xamarin.Forms.TabbedPage with FormsAppCompatActivity OnAppearing Troubles"
* [44056](https://bugzilla.xamarin.com/show_bug.cgi?id=44056) - "Picker Focused/Unfocused events not fired on iOS 10 preview" ([PR](https://github.com/xamarin/Xamarin.Forms/pull/339))

## Other fixes
* iOS10 fixes

# 2.3.3-pre1

(Only internal. No public artifacts)

Version History

Version Downloads Last updated
2.4.0.275-pre3 2,123 9/19/2017
2.4.0.269-pre2 6,928 8/29/2017
2.4.0.266-pre1 5,280 8/16/2017
2.3.5.256-pre6 17,685 6/29/2017
2.3.5.255-pre5 1,741 6/26/2017
2.3.5.239-pre3 18,044 5/11/2017
2.3.5.235-pre2 6,896 4/26/2017
2.3.5.233-pre1 4,895 4/13/2017
2.3.4.270 41,155 8/29/2017
2.3.4.267 31,930 8/16/2017
2.3.4.247 211,288 5/16/2017
2.3.4.231 132,203 4/12/2017
2.3.4.224 169,005 3/29/2017
2.3.4.221-pre6 4,266 3/27/2017
2.3.4.214-pre5 7,005 3/14/2017
2.3.4.212-pre4 3,139 3/10/2017
2.3.4.211-pre3 1,034 3/9/2017
2.3.4.192-pre2 14,113 2/3/2017
2.3.4.184-pre1 7,326 1/13/2017
2.3.3.193 161,422 2/1/2017
2.3.3.180 161,437 1/5/2017
2.3.3.175 102,514 12/6/2016
2.3.3.168 55,005 11/23/2016
2.3.3.166-pre4 5,713 11/3/2016
2.3.3.163-pre3 (current version) 5,198 10/17/2016
2.3.3.152-pre2 11,710 9/15/2016
2.3.2.127 207,791 9/14/2016
2.3.2.118-pre1 5,814 8/3/2016
2.3.1.114 131,838 8/3/2016
2.3.1.113-pre3 2,690 7/19/2016
2.3.1.111-pre2 3,835 7/4/2016
2.3.1.110-pre1 1,500 6/29/2016
2.3.0.107 163,178 6/29/2016
2.3.0.49 61,557 6/16/2016
2.3.0.46-pre3 11,746 5/30/2016
2.3.0.38-pre2 10,766 4/27/2016
2.3.0.34-pre1 6,937 4/27/2016
2.2.0.45 90,851 5/30/2016
2.2.0.31 111,391 4/27/2016
2.2.0.23-pre4 2,183 4/20/2016
2.2.0.18-pre3 1,334 4/20/2016
2.2.0.5-pre2 15,013 4/8/2016
2.2.0.4-pre1 17,531 4/5/2016
2.1.0.6529 83,660 3/13/2016
2.1.0.6526 15,001 3/9/2016
2.1.0.6524 24,375 3/2/2016
2.1.0.6521 8,478 3/1/2016
2.1.0.6517-pre5 1,127 2/18/2016
2.1.0.6513-pre4 1,071 2/9/2016
2.1.0.6508-pre3 1,364 1/28/2016
2.1.0.6503-pre2 5,921 1/22/2016
2.1.0.6501-pre1 523 1/21/2016
2.1.0.6500-pre1 366 1/20/2016
2.0.1.6505 81,180 1/28/2016
2.0.1.6495 65,116 1/20/2016
2.0.1.6492-pre1 2,846 12/3/2015
2.0.0.6490 80,692 12/1/2015
2.0.0.6484 15,999 11/21/2015
2.0.0.6482 200,450 11/17/2015
1.5.2.6478-pre3 329 11/17/2015
1.5.2.6477-pre2 2,513 11/10/2015
1.5.2.6469-pre1 1,102 10/20/2015
1.5.1.6471 66,950 10/20/2015
1.5.1.6468 2,678 10/20/2015
1.5.1.6460-pre2 581 10/13/2015
1.5.1.6455-pre1 1,642 10/2/2015
1.5.0.6447 40,518 9/25/2015
1.5.0.6446 18,305 9/16/2015
1.5.0.6404-pre3 2,203 8/25/2015
1.5.0.6401-pre2 415 8/21/2015
1.5.0.6396-pre1 999 8/5/2015
1.4.4.6449 1,454 9/25/2015
1.4.4.6443 606 9/16/2015
1.4.4.6392 54,471 7/29/2015
1.4.4.6391 1,055 7/28/2015
1.4.4.6387 1,963 7/27/2015
1.4.4.6379-pre3 585 7/20/2015
1.4.4.6378-pre2 425 7/16/2015
1.4.4.6377-pre1 387 7/14/2015
1.4.3.6376 30,433 7/9/2015
1.4.3.6374 13,704 7/1/2015
1.4.3.6372 1,099 6/30/2015
1.4.3.6364-pre3 1,312 6/16/2015
1.4.3.6358-pre2 4,464 4/24/2015
1.4.3.6356-pre1 468 4/21/2015
1.4.2.6359 46,794 4/30/2015
1.4.2.6355 11,393 4/21/2015
1.4.2.6353-pre2 1,487 3/31/2015
1.4.2.6350-pre1 544 3/30/2015
1.4.1.6349 34,319 3/30/2015
1.4.1.6347-pre2 2,298 3/19/2015
1.4.1.6342-pre1 750 3/10/2015
1.4.0.6341 25,416 3/9/2015
1.4.0.6340-pre2 1,198 3/6/2015
1.4.0.6336-pre1 633 3/3/2015
1.3.5.6337 4,021 3/5/2015
1.3.5.6335 16,928 3/2/2015
1.3.5.6333-pre1 1,002 2/17/2015
1.3.4.6332 14,826 2/17/2015
1.3.4.6331-pre4 568 2/13/2015
1.3.4.6329-pre3 355 2/12/2015
1.3.4.6328-pre2 393 2/11/2015
1.3.4.6325-pre1 365 2/9/2015
1.3.3.6323 41,948 2/9/2015
1.3.3.6322-pre3 326 2/6/2015
1.3.3.6321-pre2 486 2/4/2015
1.3.3.6318-pre1 449 2/2/2015
1.3.2.6316 6,118 2/3/2015
1.3.2.6313-pre3 423 1/30/2015
1.3.2.6309-pre2 477 1/28/2015
1.3.2.6299-pre1 1,183 1/20/2015
1.3.1.6296 44,366 1/4/2015
1.3.1.6294-pre1 3,215 12/24/2014
1.3.0.6292 8,002 12/24/2014
1.3.0.6286-pre4 1,220 12/19/2014
1.3.0.6284-pre3 758 12/12/2014
1.3.0.6280-pre2 666 12/9/2014
1.3.0.6275-pre1 6,896 11/12/2014
1.2.3.6257 33,731 10/2/2014
1.2.3.6256-pre4 1,353 9/26/2014
1.2.3.6255-pre3 1,704 9/20/2014
1.2.3.6249-pre2 953 9/9/2014
1.2.3.6246-pre1 3,241 8/15/2014
1.2.2.6243 24,517 7/30/2014
1.2.2.6241-pre3 1,821 7/28/2014
1.2.2.6240-pre2 3,572 7/22/2014
1.2.2.6238-pre1 2,618 7/17/2014
1.2.1.6229 6,825 7/14/2014
1.1.1.6206 13,157 6/19/2014
1.1.0.6201 10,860 6/12/2014
1.0.6197 2,978 6/4/2014
1.0.6188 9,946 5/28/2014
Show less