4

我在我的活动布局中使用内置的 AnalogClock 小部件。我想让它变大。调整 layout_width 和 layout_height 似乎没有什么不同。有没有一种简单的方法可以做到这一点?

<AnalogClock
    android:id="@+id/analogClock"
    android:layout_width="500dp"
    android:layout_height="500dp"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true" />
4

3 回答 3

3

你也可以使用

android:scaleX="preferedScale"

 android:scaleY="preferedScale"

preferedScale= 1,2,3 ... n

于 2014-08-01T11:46:06.177 回答
3

默认的模拟时钟有拨号盘,在 HDPI 中是 231 * 231。即使您更多地提及 AnalogClock 的宽度和高度,这些图像也不会被拉伸。要显示更大的 AnalogClock,请提供您自己的拨号盘以及具有自定义尺寸的分针和时针。

        <AnalogClock
           android:dial="@drawable/your_dial_pad"
           android:hand_hour="@drawable/your_hour_hand"
           android:hand_minute="@drawable/your_minutes_hand"/>
于 2012-10-05T14:54:31.410 回答
0

我发现以前的答案对我不起作用。我找到了一个简单的解决方案。只需为时钟的背景创建您自己的自定义可绘制对象,然后设置android:dial属性。您可以根据需要创建可绘制的对象。当然,如果你想让你的时钟看起来很漂亮,你也必须创建两个小时和分钟的可绘制对象。您可以简单地将默认可绘制对象复制到某处并使用图像编辑器调整它们的大小:

<AnalogClock
        android:id="@+id/AnalogClock"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:dial="@drawable/widgetdial_big"
        android:hand_hour="@drawable/widgethour_big"
        android:hand_minute="@drawable/widgetminute_big" />

如果您使用小部件,则必须像这样声明 AppWidgetProviderInfo(例如 300dip):

<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
    android:initialLayout="@layout/widget"
    android:minHeight="300dip"
    android:minWidth="300dip"
    android:updatePeriodMillis="0" />
于 2016-01-11T14:06:47.853 回答