如何在安卓中自定义日期选择器的宽度和高度

21

有人能告诉我如何在安卓中自定义日期选择器的宽度和高度吗?

3个回答

48

我找到的唯一调整大小的方法是简单地重新缩放视图。例如,如果你只想要正常大小的80%,我会添加这些属性:

android:scaleX="0.8"
android:scaleY="0.8"

1
一个解决方法:https://dev59.com/PE_Sa4cB1Zd3GeqP9Ro5 - gh.

23

对于DatePicker和TimePicker:

  1. android:scaleX="0.60"android:scaleY="0.60"
    以上代码将设置日期选择器和时间选择器的可见部分为总空间的60%

  2. android:layout_marginLeft="-50dp"android:layout_marginTop="-30dp"android:layout_marginRight="-50dp"android:layout_marginBottom="-30dp"
    以上代码将移除此选择器周围的额外空间。

    padding="-40dp" 对我没有用,所以我使用了margin。

    <DatePicker
          android:id="@+id/date_picker"
          android:calendarViewShown="false"
          android:layout_height="105dp"
          android:layout_width="wrap_content"
          android:scaleX="0.60"
          android:scaleY="0.60"
          android:layout_marginLeft="-50dp"
          android:layout_marginTop="-30dp"
          android:layout_marginRight="-50dp"
          android:layout_marginBottom="-30dp" />
    
    <TimePicker
          android:id="@+id/time_picker"
          android:layout_width="wrap_content"
          android:layout_height="105dp"
          android:scaleX="0.60"
          android:scaleY="0.60"
          android:layout_marginLeft="-55dp"
          android:layout_marginTop="-30dp"
          android:layout_marginRight="-50dp"
          android:layout_marginBottom="-30dp" />
    

3
请提供一些除了纯代码片段之外的信息。 - Crypt32
3
谢谢!在尝试了许多其他方法后,负边距对我很有用! - blueprintchris
2
哦,我的天啊,人们怎么会没看到这个,谢谢。 - HaydenKai
你是怎么知道如何计算这些边距的? - user3586734
@Andrew 当你添加 android:scaleX="0.60" 和 android:scaleY="0.60" 时,它会将选择器的大小减小到实际大小的60%,因此剩余的40%看起来像选择器周围的空白白色边框。因此,我使用边距来隐藏那个白色边框。 - Pratik Saluja
显示剩余2条评论

4
在您的布局的XML文件中,更改android:layout_height和android:layout_width属性。我假设您目前正在使用fill_parent或wrap_content作为这些属性的值,但是您可以更具体 - 定义精确或缩放像素值。
例如,android:layout_width="15dp"将设置可缩放值为15的宽度。您可以将15更改为任何您想要的数字。如果您想设置特定的像素大小,则可以使用例如15px。

但是这并不适用于所有的Android版本,例如Gingerbread 2.3.3。 - slodeveloper

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接