iOS platform features in Xamarin.Forms
Developing Xamarin.Forms applications for iOS requires Visual Studio. The supported platforms page contains more information about the pre-requisites.
Platform-specifics
Platform-specifics allow you to consume functionality that's only available on a specific platform, without implementing custom renderers or effects.
The following platform-specific functionality is provided for Xamarin.Forms views, pages, and layouts on iOS:
- Blur support for any
VisualElement
. For more information, see VisualElement Blur on iOS. - Disabling legacy color mode on a supported
VisualElement
. For more information, see VisualElement Legacy Color Mode on iOS. - Enabling a drop shadow on a
VisualElement
. For more information, see VisualElement Drop Shadows on iOS. - Enabling a
VisualElement
object to become the first responder to touch events. For more information, see VisualElement First Responder.
The following platform-specific functionality is provided for Xamarin.Forms views on iOS:
- Setting the
Cell
background color. For more information, see Cell Background Color on iOS. - Controlling when item selection occurs in a
DatePicker
. For more information, see DatePicker Item Selection on iOS. - Ensuring that inputted text fits into an
Entry
by adjusting the font size. For more information, see Entry Font Size on iOS. - Setting the cursor color in a
Entry
. For more information, see Entry Cursor Color on iOS. - Controlling whether
ListView
header cells float during scrolling. For more information, see ListView Group Header Style on iOS. - Controlling whether row animations are disabled when the
ListView
items collection is being updated. For more information, see ListView Row Animations on iOS. - Setting the separator style on a
ListView
. For more information, see ListView Separator Style on iOS. - Controlling when item selection occurs in a
Picker
. For more information, see Picker Item Selection on iOS. - Controlling whether a
SearchBar
has a background. For more information, see SearchBar style on iOS. - Enabling the
Slider.Value
property to be set by tapping on a position on theSlider
bar, rather than by having to drag theSlider
thumb. For more information, see Slider Thumb Tap on iOS. - Controlling the transition that's used when opening a
SwipeView
. For more information, see SwipeView Swipe Transition Mode. - Controlling when item selection occurs in a
TimePicker
. For more information, see TimePicker Item Selection on iOS.
The following platform-specific functionality is provided for Xamarin.Forms pages on iOS:
- Controlling whether the detail page of a
FlyoutPage
has shadow applied to it, when revealing the flyout page. For more information, see FlyoutPage Shadow. - Hiding the navigation bar separator on a
NavigationPage
. For more information, see NavigationPage Bar Separator on iOS. - Controlling whether the navigation bar is translucent. For more information, see Navigation Bar Translucency on iOS.
- Controlling whether the status bar text color on a
NavigationPage
is adjusted to match the luminosity of the navigation bar. For more information, see NavigationPage Bar Text Color Mode on iOS. - Controlling whether the page title is displayed as a large title in the page navigation bar. For more information, see Large Page Titles on iOS.
- Setting the visibility of the home indicator on a
Page
. For more information, see Home Indicator Visibility on iOS. - Setting the status bar visibility on a
Page
. For more information, see Page Status Bar Visibility on iOS. - Ensuring that page content is positioned on an area of the screen that is safe for all iOS devices. For more information, see Safe Area Layout Guide on iOS.
- Setting the presentation style of modal pages. For more information, see Modal Page Presentation Style.
- Setting the translucency mode of the tab bar on a
TabbedPage
. For more information, see TabbedPage Translucent TabBar on iOS.
The following platform-specific functionality is provided for Xamarin.Forms layouts on iOS:
- Controlling whether a
ScrollView
handles a touch gesture or passes it to its content. For more information, see ScrollView Content Touches on iOS.
The following platform-specific functionality is provided for the Xamarin.Forms Application
class on iOS:
- Disabling accessibility scaling for named font sizes. For more information, see Accessibility Scaling for Named Font Sizes on iOS.
- Enabling control layout and rendering updates to be performed on the main thread. For more information, see Main Thread Control Updates on iOS.
- Enabling a
PanGestureRecognizer
in a scrolling view to capture and share the pan gesture with the scrolling view. For more information, see Simultaneous Pan Gesture Recognition on iOS.
iOS-specific formatting
Xamarin.Forms enables cross-platform user interface styles and colors to be set - but there are other options for setting the theme of your iOS using platform APIs in the iOS project.
Read more about formatting the user interface using iOS-specific APIs, such as Info.plist configuration and the UIAppearance
API.
Other iOS features
Using custom renderers, the DependencyService, and the MessagingCenter, it's possible to incorporate a wide variety of native functionality into Xamarin.Forms applications for iOS.