Xamarin.Forms 1.3.0.6280-pre2

This is a prerelease version of Xamarin.Forms.
There is a newer version of this package available.
See the version list below for details.
dotnet add package Xamarin.Forms --version 1.3.0.6280-pre2
NuGet\Install-Package Xamarin.Forms -Version 1.3.0.6280-pre2
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Xamarin.Forms" Version="1.3.0.6280-pre2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Xamarin.Forms --version 1.3.0.6280-pre2
#r "nuget: Xamarin.Forms, 1.3.0.6280-pre2"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Xamarin.Forms as a Cake Addin
#addin nuget:?package=Xamarin.Forms&version=1.3.0.6280-pre2&prerelease

// Install Xamarin.Forms as a Cake Tool
#tool nuget:?package=Xamarin.Forms&version=1.3.0.6280-pre2&prerelease

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

Product Compatible and additional computed target framework versions.
MonoAndroid monoandroid10 is compatible. 
MonoTouch monotouch10 is compatible. 
Windows Phone wp8 is compatible.  wp81 was computed. 
Xamarin.iOS xamarinios10 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on Xamarin.Forms:

Package Downloads
Xamarin.Forms.Maps

Maps models and renderers for Xamarin.Forms

pendo-sdk-ios-xamarin-forms

The Pendo SDK for apps based on Xamarin Forms 5. The Pendo platform allows product owners to track user behavior and deliver personal experiences through highly targeted native in-app surveys, guides, and announcements.

GitHub repositories (332)

Showing the top 5 popular GitHub repositories that depend on Xamarin.Forms:

Repository Stars
dotnet/maui
.NET MAUI is the .NET Multi-platform App UI, a framework for building native device applications spanning mobile, tablet, and desktop.
dotnet/BenchmarkDotNet
Powerful .NET library for benchmarking
microsoft/ailab
Experience, Learn and Code the latest breakthrough innovations with Microsoft AI
PrismLibrary/Prism
Prism is a framework for building loosely coupled, maintainable, and testable XAML applications in WPF, Xamarin Forms, and Uno / Win UI Applications..
xamarin/Xamarin.Forms
Xamarin.Forms is no longer supported. Migrate your apps to .NET MAUI.
Version Downloads Last updated
2.0.1.6492-pre1 789 12/3/2015
2.0.0.6490 11,598 12/1/2015
2.0.0.6484 7,628 11/21/2015
2.0.0.6482 7,382 11/17/2015
1.5.2.6478-pre3 160 11/17/2015
1.5.2.6477-pre2 350 11/10/2015
1.5.2.6469-pre1 872 10/20/2015
1.5.1.6471 17,857 10/20/2015
1.5.1.6468 1,855 10/20/2015
1.5.1.6460-pre2 441 10/13/2015
1.5.1.6455-pre1 615 10/2/2015
1.5.0.6447 18,106 9/25/2015
1.5.0.6446 8,994 9/16/2015
1.5.0.6404-pre3 1,676 8/25/2015
1.5.0.6401-pre2 307 8/21/2015
1.5.0.6396-pre1 765 8/5/2015
1.4.4.6449 580 9/25/2015
1.4.4.6443 425 9/16/2015
1.4.4.6392 24,845 7/29/2015
1.4.4.6391 876 7/28/2015
1.4.4.6387 1,677 7/27/2015
1.4.4.6379-pre3 477 7/20/2015
1.4.4.6378-pre2 335 7/16/2015
1.4.4.6377-pre1 260 7/14/2015
1.4.3.6376 15,767 7/9/2015
1.4.3.6374 10,925 7/1/2015
1.4.3.6372 789 6/30/2015
1.4.3.6364-pre3 1,096 6/16/2015
1.4.3.6358-pre2 2,563 4/24/2015
1.4.3.6356-pre1 367 4/21/2015
1.4.2.6359 26,430 4/30/2015
1.4.2.6355 7,790 4/21/2015
1.4.2.6353-pre2 958 3/31/2015
1.4.2.6350-pre1 239 3/30/2015
1.4.1.6349 19,924 3/30/2015
1.4.1.6347-pre2 1,997 3/19/2015
1.4.1.6342-pre1 635 3/10/2015
1.4.0.6341 15,723 3/9/2015
1.4.0.6340-pre2 528 3/6/2015
1.4.0.6336-pre1 505 3/3/2015
1.3.5.6337 3,233 3/5/2015
1.3.5.6335 4,114 3/2/2015
1.3.5.6333-pre1 868 2/17/2015
1.3.4.6332 9,678 2/17/2015
1.3.4.6331-pre4 466 2/13/2015
1.3.4.6329-pre3 250 2/12/2015
1.3.4.6328-pre2 260 2/11/2015
1.3.4.6325-pre1 281 2/9/2015
1.3.3.6323 17,524 2/9/2015
1.3.3.6322-pre3 246 2/6/2015
1.3.3.6321-pre2 392 2/4/2015
1.3.3.6318-pre1 362 2/2/2015
1.3.2.6316 4,575 2/3/2015
1.3.2.6313-pre3 347 1/30/2015
1.3.2.6309-pre2 387 1/28/2015
1.3.2.6299-pre1 973 1/20/2015
1.3.1.6296 18,610 1/4/2015
1.3.1.6294-pre1 2,499 12/24/2014
1.3.0.6292 6,436 12/24/2014
1.3.0.6286-pre4 867 12/19/2014
1.3.0.6284-pre3 638 12/12/2014
1.3.0.6280-pre2 572 12/9/2014
1.3.0.6275-pre1 5,983 11/12/2014
1.2.3.6257 23,860 10/2/2014
1.2.3.6256-pre4 1,193 9/26/2014
1.2.3.6255-pre3 980 9/20/2014
1.2.3.6249-pre2 864 9/9/2014
1.2.3.6246-pre1 2,191 8/15/2014
1.2.2.6243 16,537 7/30/2014
1.2.2.6241-pre3 1,501 7/28/2014
1.2.2.6240-pre2 1,755 7/22/2014
1.2.2.6238-pre1 1,797 7/17/2014
1.2.1.6229 5,202 7/14/2014
1.1.1.6206 12,269 6/19/2014
1.1.0.6201 6,651 6/12/2014
1.0.6197 2,408 6/4/2014
1.0.6188 8,242 5/28/2014

## Important Notes
This release (1.3.0 final) will be the last release to support the current *Preview* Unified iOS API. The next release will support the *Stable* iOS Unified API, which is not ABI/API compatible. This package is not compatible with the new Stable iOS Unified API. Xamarin.Forms 1.3.1 will be simultaneously released when the Stable Unified API releases to the stable channel.

If you are using the Classic iOS API this change does not affect you.

## New API
- MasterDetailPage.MasterBehavior : Used to control how the MasterDetailPage renderers the split view between the Master and Detail. Allowed values are:

```csharp
public enum MasterBehavior
{
SplitOnLandscape,
Split,
Popover,
SplitOnPortrait
}
```

- VisualElement.Navigation now contains overloads for all Pushing and Popping methods that accept a boolean parameter to enable/disable animations.
- INavigation contains methods needed for more complex navigation scenarios:

```csharp
public interface INavigation
{
IReadOnlyList<Page> NavigationStack { get; }
IReadOnlyList<Page> ModalStack { get; }

void RemovePage (Page page);
void InsertPageBefore (Page page, Page before);

Task PushAsync (Page page);
Task<Page> PopAsync ();
Task PopToRootAsync ();
Task PushModalAsync (Page page);
Task<Page> PopModalAsync ();

Task PushAsync (Page page, bool animated);
Task<Page> PopAsync (bool animated);
Task PopToRootAsync (bool animated);
Task PushModalAsync (Page page, bool animated);
Task<Page> PopModalAsync (bool animated);
}
```
- New member on Page: `protected virtual bool OnBackButtonPressed ()`: Override in order to handle *physical* back button press events. Events bubble down from root page and back up. Unhandled back button events will cause the app to exit. NavigationPage and the Platform still handle the back button as expected, however it is now possible to intercept and modify these behaviors. Not overriding this method retains the existing back button behavior.
- DependencyService now has Register methods for users needing more advanced ways to register dependencies.
- WidthRequest, HeightRequest, MinimumWidthRequest, and MinimumHeightRequest are now BindableProperties
- IViewController, IVisualElementController, and IElementController now available and explicitly implemented on VisualElement. These interfaces will eventually replace all internal API's currently used to communicate between platform renderers and the frontend API.
- IElementController.SetValueFromRenderer allows for updating of BindableProperties from renderers without accidentally clearing bindings.
- XAML now supports text as the content node in Label: `<Label>Hello World</Label>`
- Pin now has a Clicked property for detecting when the user taps or clicks on a Map pin after the information window is visible.
- Layout constructor is now marked protected and not internal

## Bug Fixes

### Core
- Adding a bad Path to a UriImageSource no longer crashes
- Improved XAML error reporting
- Fix crash where calling Navigation.PushAsync from re-initialized View sometimes crashed
- Fix error where cloning a Binding did not clone the Source parameter
- IsPresented is now respected correctly when using MasterDetailPage. May throw exception now if IsPresented is set to a disallowed value with MasterBehavior.
- Several bugs relating to culture invariance in XAML parsing.
- ThicknessConverter no longer depends on device culture
- Label properly resizes after setting Label.FontSize/Font/FontAttributes [Bug](https://bugzilla.xamarin.com/show_bug.cgi?id=24722)
- XAML InitializeComponent calls in some apps this will result in a massive performance improvement when loading pages.
- Serialization now property supports DataMemberAttributes
- ListView and TableView now return consistent sizing across all platforms. This change should not affect most apps, however some apps suffering from inconsistent sizing with ListViews/TableViews should find the situation better.
- Small set of changes to Layout to enable performance optimization with unneeded measure invalidation.

### iOS
- Button.Image is now rendered with original image to match other platforms
- Editor now scrolls to the correct location when a keyboard is shown
- Fix NullReferenceException when assigning to SearchBar.BackgroundColor
- Fix issue where PushModalAsync could sometimes result in a unhandled exception from UIKit.
- MasterDetailPage now disposes of child renderers correctly, resolves a memory leak.
- Fix issue where cells could not be unselected using blank rows.
- WebViewRenderer now uses correct path for finding resources
- Resolve issue where calling CreateViewController multiple times would cause an exception
- Use proxy when downloading images if configured on device.
- Partial swipes on a NavigationPage no longer cause the NavigationPage to get out of sync with the UINavigationController
- ActionSheet now correctly shows on iOS 8
- ActionSheet no longer gets incorrectly positions when rotating while visible.
- Assigning to Application.MainPage now works reliably

### Android
- MasterDetailPage container width now matches android design guidelines on tablets. (No longer insanely wide).
- SwitchCell height is no longer squished
- No longer crashes on Android 5.0
- No longer renders with a black bar at the bottom of Android 5.0 devices
- Other compatibility fixes with Android 5.0
- WebViewRenderer now uses correct path for finding resources
- Fix issue where calling SetPage multiple times would throw an exception
- Fix crash when restarting the Activity introduced in last pre-release
- Assigning to Application.MainPage now works reliably

### WinPhone
- Assigning to Application.MainPage now works reliably
- Application.OnStart now is called correctly

## Still to come
Some things coming post-1.3:

- Android bitmap optimization (automatic downsampling to prevent OOM exceptions with large images)
- WinRT support (Windows & Windows Phone 8.1)
- Bug fixes as always
- CarouselView
- Much much more