Clases base y controles nativos del representador

Todos los controles de Xamarin.Forms tienen un representador que las acompaña para cada plataforma y que crea una instancia de un control nativo. En este artículo se enumeran las clases de representador y control nativo que implementan cada página, diseño, vista y celda de Xamarin.Forms.

A excepción de la clase MapRenderer, los representadores específicos de la plataforma se pueden encontrar en los espacios de nombres siguientes:

  • iOS: Xamarin.Forms.Platform.iOS
  • Android: Xamarin.Forms.Platform.Android
  • Android (AppCompat): Xamarin.Forms.Platform.Android.AppCompat
  • Android (FastRenderers): Xamarin.Forms.Platform.Android.FastRenderers
  • Plataforma universal de Windows (UWP): Xamarin.Forms.Platform.UWP

Para obtener más información sobre los representadores rápidos, consulte Representadores rápidos de Xamarin.Forms.

La clase MapRenderer se puede encontrar en los espacios de nombres siguientes:

  • iOS: Xamarin.Forms.Maps.iOS
  • Android: Xamarin.Forms.Maps.Android
  • Plataforma universal de Windows (UWP): Xamarin.Forms.Maps.UWP

Nota:

Para obtener información sobre cómo crear representadores personalizados para aplicaciones de Shell, consulte Representadores personalizados de Xamarin.Forms Shell.

Páginas

En la tabla siguiente se enumeran las clases de representador y control nativo que implementan cada tipo Page de Xamarin.Forms:

Page Representador iOS Android Android (AppCompat) UWP
ContentPage PageRenderer UIViewController ViewGroup FrameworkElement
FlyoutPage PhoneFlyoutPageRenderer (iOS – Teléfono), TabletFlyoutPageRenderer (iOS – Tableta), MasterDetailRenderer (Android), FlyoutPageRenderer (Android AppCompat), FlyoutPageRenderer (UWP) UIViewController (teléfono), UISplitViewController (tableta) DrawerLayout (v4) DrawerLayout (v4) FrameworkElement (Control personalizado)
NavigationPage NavigationRenderer (iOS y Android), NavigationPageRenderer (AppCompat Android), NavigationPageRenderer (UWP) UIToolbar ViewGroup ViewGroup FrameworkElement (Control personalizado)
TabbedPage TabbedRenderer (iOS y Android), TabbedPageRenderer (Android AppCompat), TabbedPageRenderer (UWP) UIView ViewPager ViewPager FrameworkElement (Pivot)
TemplatedPage PageRenderer UIViewController ViewGroup FrameworkElement
CarouselPage CarouselPageRenderer UIScrollView ViewPager ViewPager FrameworkElement (FlipView)

Diseños

En la tabla siguiente se enumeran las clases de representador y control nativo que implementan cada tipo Layout de Xamarin.Forms:

Layout Representador iOS Android Android (AppCompat) UWP
ContentPresenter ViewRenderer UIView Ver Ver FrameworkElement
ContentView ViewRenderer UIView Ver Ver FrameworkElement
FlexLayout ViewRenderer UIView Ver Ver FrameworkElement
Frame FrameRenderer UIView ViewGroup CardView Borde
ScrollView ScrollViewRenderer UIScrollView ScrollView ScrollView ScrollViewer
TemplatedView ViewRenderer UIView Ver Ver FrameworkElement
AbsoluteLayout ViewRenderer UIView Ver Ver FrameworkElement
Grid ViewRenderer UIView Ver Ver FrameworkElement
RelativeLayout ViewRenderer UIView Ver Ver FrameworkElement
StackLayout ViewRenderer UIView Ver Ver FrameworkElement

Vistas

En la tabla siguiente se enumeran las clases de representador y control nativo que implementan cada tipo View de Xamarin.Forms:

Vistas Representador iOS Android Android (AppCompat) UWP
ActivityIndicator ActivityIndicatorRenderer UIActivityIndicator ProgressBar ProgressBar
BoxView BoxRenderer (iOS y Android), BoxViewRenderer (UWP) UIView ViewGroup Rectángulo
Button ButtonRenderer UIButton Button AppCompatButton Button
CarouselView CarouselViewRenderer UICollectionView RecyclerView ListViewBase
CheckBox CheckBoxRenderer UIButton AppCompatCheckBox CheckBox
CollectionView CollectionViewRenderer UICollectionView RecyclerView ListViewBase
DatePicker DatePickerRenderer UITextField EditText DatePicker
Editor EditorRenderer UITextView EditText TextBox
Ellipse EllipseRenderer CALayer Ver Elipse
Entry EntryRenderer UITextField EditText TextBox
Image ImageRenderer UIImageView ImageView Imagen
ImageButton ImageButtonRenderer UIButton AppCompatImageButton Button
IndicatorView IndicatorViewRenderer UIPageControl LinearLayout
Label LabelRenderer UILabel TextView TextBlock
Line LineRenderer CALayer Ver Línea
ListView ListViewRenderer UITableView ListView ListView
Map MapRenderer MKMapView MapView MapControl
Path PathRenderer CALayer Ver Path
Picker PickerRenderer UITextField EditText EditText ComboBox
Polygon PolygonRenderer CALayer Ver Polígono
Polyline PolylineRenderer CALayer Ver Polilínea
ProgressBar ProgressBarRenderer UIProgressView ProgressBar ProgressBar
RadioButton RadioButtonRenderer UIButton AppCompatRadioButton RadioButton
Rectangle RectangleRenderer CALayer Ver Rectángulo
RefreshView RefreshViewRenderer UIView SwipeRefreshLayout RefreshContainer
SearchBar SearchBarRenderer UISearchBar SearchView AutoSuggestBox
Slider SliderRenderer UISlider SeekBar Control deslizante
Stepper StepperRenderer UIStepper LinearLayout Control
SwipeView SwipeViewRenderer UIView Ver SwipeControl
Switch SwitchRenderer UISwitch Switch SwitchCompat ToggleSwitch
TableView TableViewRenderer UITableView ListView ListView
TimePicker TimePickerRenderer UITextField EditText TimePicker
WebView WkWebViewRenderer (iOS), WebViewRenderer (Android y UWP) WkWebView WebView WebView

Celdas

En la tabla siguiente se enumeran las clases de representador y control nativo que implementan cada tipo Cell de Xamarin.Forms:

Celdas Representador iOS Android UWP
EntryCell EntryCellRenderer UITableViewCell con UITextField LinearLayout con TextView y EditText DataTemplate con un control TextBox
SwitchCell SwitchCellRenderer UITableViewCell con UISwitch Switch DataTemplate con un elemento Grid que contiene controles TextBlock y ToggleSwitch
TextCell TextCellRenderer UITableViewCell LinearLayout con dos objetos TextView DataTemplate con un elemento StackPanel que contiene dos elementos TextBlock
ImageCell ImageCellRenderer UITableViewCell con UIImage LinearLayout con dos objetos TextView y un objeto ImageView DataTemplate con un elemento Grid que contiene un control Image y dos TextBlock
ViewCell ViewCellRenderer UITableViewCell Ver DataTemplate con un elemento ContentPresenter