Controles deslizantes, conmutadores y controles segmentados en Xamarin.iOS
Controles deslizantes
El control deslizante permite una selección simple de un valor numérico dentro de un intervalo. El control tiene como valor predeterminado un valor entre 0 y 1, pero estos límites se pueden personalizar.
En la captura de pantalla siguiente, se muestran las propiedades que se pueden editar en el Diseñador:
Puede establecer estos valores en el código como se muestra a continuación, incluido el cableado de un controlador para mostrar el valor seleccionado actualmente en un control UILabel
:
slider1.MinValue = -1;
slider1.MaxValue = 2;
slider1.Value = 0.5f; // the current value
slider1.ValueChanged += (sender,e) => label1.Text = ((UISlider)sender).Value.ToString ();
También puede personalizar la apariencia visual del control deslizante estableciendo
slider1.ThumbTintColor = UIColor.Blue;
slider1.MinimumTrackTintColor = UIColor.Gray;
slider1.MaximumTrackTintColor = UIColor.Green;
El control deslizante personalizado tiene este aspecto:
Importante
Actualmente hay un error que provoca que ThumbTint
no se represente en tiempo de ejecución según lo previsto. Puede agregar la siguiente línea de código antes del código anterior como solución alternativa. [Fuente]:
slider1.SetThumbImage(UIImage.FromBundle("thumb.png"),UIControlState.Normal);
Puede usar cualquier imagen, ya que se reemplazará, pero asegúrese de que se coloque dentro del directorio Resources y que se le llame en el código.
Switch
iOS usa UISwitch
como una entrada booleana que puede representarse mediante un botón de radio en otras plataformas. El usuario puede manipular el control moviendo el pulgar entre las posiciones Apagado/Encendido.
La apariencia del conmutador se puede personalizar en el Panel de propiedades del diseñador, lo que le permitirá controlar el estado predeterminado, color activado/desactivado y una imagen activada/desactivada. Esto se muestra en la imagen siguiente:
Las propiedades del modificador también se pueden establecer en el código; por ejemplo, el código siguiente mostrará un modificador con el valor predeterminado de On
:
switch1.On = true;
Controles segmentados
Un control segmentado es una manera organizada de permitir que los usuarios interactúen con un pequeño número de opciones. Se diseña horizontalmente y cada segmento funciona como un botón independiente. Al usar el Diseñador, el control segmentado se puede encontrar en Cuadro de herramientas > Controles y debe tener un aspecto similar a la siguiente imagen:
Una característica única del Diseñador permite que cada segmento se seleccione individualmente en la superficie de diseño, como se muestra a continuación:
Esto permite que el Panel de propiedades se use para controlar con más precisión las propiedades de cada segmento. Puede ver las propiedades editables en la captura de pantalla siguiente:
Debe tenerse en cuenta que el estilo de control segmentado ha quedado en desuso en iOS 7 y, por tanto, ajustar las opciones para esto en una aplicación de iOS 7 no tendrá ningún efecto.