android - personalizar - Hacer DatePicker y TimePicker más pequeño
show time picker android (6)
(Esto realmente funciona y otros no) Después de mucho buscar esto funcionó:
<DatePicker
android:id="@+id/dp_datepicker"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleX="0.7"
android:scaleY="0.7"
android:layout_marginLeft="-30dp"
android:layout_marginRight="-30dp"
android:datePickerMode="spinner"
/>
<TimePicker
android:id="@+id/tp_timepicker"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleX="0.7"
android:scaleY="0.7"
android:layout_marginLeft="-30dp"
android:layout_marginRight="-30dp"
android:timePickerMode="spinner"
/>
El android:scaleX="0.7"
es lo que redujo el selector visible (funciona para DatePicker
y TimePicker
) y el android:layout_marginLeft="-30dp"
permitido para que se reduzca el espacio.
Nota: todos los intentos de usar android:padding="-30dp"
no funcionaron y el uso de android:layout_margin="-30dp"
(sin un lado especificado) tampoco funcionó. Esperemos que esto ayude a aquellos que estaban tan perdidos como yo.
PS Google consigue que tu maldita API de DatePicker se arregle!
¿Hay alguna forma de hacer DatePicker y TimePicker más pequeños (pero para que sean visibles todas las partes) en Android? Intenté configurar layout_width = "130dp" pero DatePicker no está visible, solo la esquina superior izquierda.
En lugar de usar "dp" para el ancho del diseño, use porcentajes de peso para hacerlo más pequeño. Para que android: layout_weight sea efectivo, ponga android: layout_width a 0 dip.
android:layout_height="wrap_content"
android:layout_weight=".33"
android:layout_width="0dip"
android:textSize="12sp"
Esto me sirvió para encajar un selector de fecha y hora en un diálogo con un diseño personalizado en modo horizontal en una pantalla pequeña. Establezca el weightum de un contenedor (LinarLayout) en 100 y luego llénelo con widgets que sumen hasta 100 en la propiedad layout_weight.
<LinearLayout
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:weightSum="100"
android:layout_gravity="center_horizontal">
<DatePicker
android:id="@+id/dlgDateTimePickerDate"
android:layout_width="wrap_content"
android:layout_weight="50"
android:layout_height="wrap_content" />
<TimePicker
android:id="@+id/dlgDateTimePickerTime"
android:layout_weight="50"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
Las propiedades de uso siguen:
Ejemplo más pequeño 80% original.
android:scaleY="0.8"
android:scaleX="0.8"
Se puede escalar así de simple:
android:scaleY="0.5" android:scaleX="0.5"
Para obtener la mitad del tamaño.
Y para obtener un relleno más pequeño, android:padding="-20dp"
Mirando desde el marco, el selector puede superponerse a otras vistas, pero en la aplicación, no lo hará.
El relleno va a funcionar perfectamente y los botones también.
Otra solución:
Póngalo en un LinearLayout
y establezca la altura del LinearLayout
manualmente