Saltar al contenido

Comprensión de WidthRequest

La guía paso a paso o código que encontrarás en este artículo es la solución más fácil y efectiva que hallamos a tu duda o dilema.

Solución:

WidthRequest simplemente describe el ancho deseado de un elemento durante el próximo ciclo de diseño.
Para que funcione como cabría esperar, se deben cumplir 2 condiciones:
1) el ancho solicitado es consistente con todas las restricciones (por ejemplo, el ancho de los padres) y
2) se activa un ciclo de diseño.
Ancho de solicitud: https://developer.xamarin.com/api/property/Xamarin.Forms.VisualElement.WidthRequest/

Pero eso es complicado. Recomiendo simplemente reemplazar el diseño de la pila con una cuadrícula y colocar cada elemento en una columna del ancho deseado.
Ejemplo de cuadrícula: https://developer.xamarin.com/api/type/Xamarin.Forms.Grid/

Debe especificar una HorizontalOptions como “inicio” o “centro”. Las opciones horizontales predeterminadas para stackLayout son FillAndExpand, por lo que los elementos secundarios como una vista de lista llenarán toda el área horizontal disponible aunque especifique un ancho. Esta fue una mala decisión en nombre de Microsoft porque el comportamiento predeterminado ignorará/anulará una solicitud de ancho.

Aquí hay un ejemplo visual: tengo un selector donde configuro la solicitud de ancho en 200, que debería ocupar aproximadamente 2/3 del espacio horizontal.


    

Solicitud de ancho ignorada

Como puede ver, la solicitud de ancho se anula/ignora. Entonces, si después de configurar HorizontalOptions en “Inicio”…


    

Solicitud de ancho respetada

Se respeta la solicitud de ancho. Por supuesto, estoy configurando las propiedades en el archivo .xaml aquí, que generalmente prefiero, pero también puede configurar las Opciones horizontales en C # de esta manera

pickerRanks.HorizontalOptions = LayoutOptions.Start;

Si te mola el tema, puedes dejar un enunciado acerca de qué te ha parecido esta noticia.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *