Android 小部件占用额外的单元格

Android 小部件占用额外的单元格,android,android-widget,Android,Android Widget,我有一个用于xhdpi设备(API 14+)的150 x 210 dp小部件。当我添加小部件时,它会占用更多的空间。它允许我调整它的大小以占用更小的空间(但为什么它不是以最小的大小添加的(比如我调整它的大小)?)因为我可以调整它的大小以使其更小,我想我为最小大小指定的值是正确的。。。我的期望是在默认情况下占据我指定的最小大小,而不仅仅是在我调整大小时 <appwidget-provider xmlns:android="http://schemas.android.com/apk/res/

我有一个用于xhdpi设备(API 14+)的150 x 210 dp小部件。当我添加小部件时,它会占用更多的空间。它允许我调整它的大小以占用更小的空间(但为什么它不是以最小的大小添加的(比如我调整它的大小)?)因为我可以调整它的大小以使其更小,我想我为最小大小指定的值是正确的。。。我的期望是在默认情况下占据我指定的最小大小,而不仅仅是在我调整大小时

<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
    android:minWidth="@dimen/recording_widget_min_width"
    android:minHeight="@dimen/recording_widget_min_height"
    android:updatePeriodMillis="86400000"
    android:previewImage="@drawable/ic_launcher"
    android:initialLayout="@layout/recording_widget_layout"
    android:resizeMode="horizontal|vertical"
    android:widgetCategory="home_screen">    
</appwidget-provider>

minWidth和minHeight顾名思义是最小值。他们说图像可以大于这些值,但不能小于这些值

例如,如果将minWidth和minHeight都设置为100,但为资源a提供的内部大小为50 x 50,则它将被拉伸到100 x 100。但是,如果您提供的资源大于100 x 100,它将以其固有的宽度和高度绘制

为了更好地理解,请研究android如何在屏幕上绘制视图。特别是在onMeasure中使用MeasureSpecs。这方面的一个很好的解释可以在

<resources>
    <dimen name="recording_widget_min_width">150dp</dimen>
    <dimen name="recording_widget_min_height">210dp</dimen>        
</resources>