Изменение размера DatePicker в android

Как я могу уменьшить размер (высоту и ширину) DatePicker? Есть ли встроенный метод для этого?

5 ответов


нет. Вы не можете уменьшить размер представления сверх их минимального размера. Использование wrap_content гарантирует, что DatePicker достаточно велик, чтобы заключить его содержимое.

<DatePicker
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
/>

пример DatePicker, который составляет половину его исходного размера.

<DatePicker
   android:id="@+id/datePicker"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:calendarViewShown="false"
   android:scaleX=".5"
   android:scaleY=".5" />

N, мы не можем уменьшить размер выбора даты в Android, но для установки даты в нашей программе мы можем использовать диалоговое окно выбора даты. Вот ссылка, связанная с этим: http://developer.android.com/guide/topics/ui/controls/pickers.html


чтобы уменьшить пространство, занимаемое datepicker, я использовал оба варианта:

android:datePickerMode="spinner"
android:calendarViewShown="false"

будет выглядеть так, что в значительной степени стандартно, а также используется рядом других приложений и не занимает слишком много места

DatePicker in Spinner mode with no calendar shown


Я думаю, что мы не можем уменьшить фактический размер представления выбора даты, но мы можем использовать масштабирование и отрицательные свойства заполнения, чтобы сделать выбор даты меньше.

масштабирование выбора даты с помощью атрибутов android:scaleY и android:scaleX сделает выбор меньше, но все равно займет одинаковое пространство просмотра внутри действия/ фрагмента. Чтобы удалить дополнительное пространство вокруг уменьшенной версии date picker, мы можем использовать отрицательный набивка.

например, если мы хотим разместить две уменьшенные версии выбора даты бок о бок, не оставляя большого зазора между ними, то мы можем сделать это, отрегулировав заполнение, как показано ниже:

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">
     <DatePicker
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:calendarViewShown="false"
        android:padding="-40dp"
        android:scaleY="0.80"
        android:scaleX="0.80"/>

    <DatePicker
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:calendarViewShown="false"
        android:padding="-40dp"
        android:scaleY="0.80"
        android:scaleX="0.80"/>
</LinearLayout>

выше пример показывает размещение 2 выбора даты бок о бок, но мы можем разместить любой другой вид рядом с выбором даты, отрегулировав заполнение, как показано выше.