0

我在多个教程中创建了一个小部件,但是在让小部件填充整个单元格时遇到了一些问题。

当我在像三星 Galaxy S 这样的小屏幕上加载小部件时,它会填满整个单元格空间,但在我的平板电脑上,小部件布局周围似乎有很大的边距或填充,以防止它填满整个单元格,但我的许多我下载的其他小部件填充了平板电脑上的整个 2x2 单元格区域。

这是我用于小部件大小的代码。

<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
    android:initialLayout="@layout/widget"
    android:minHeight="146dp"
    android:minResizeHeight="146dp"
    android:minResizeWidth="146dp"
    android:minWidth="146dp"
    android:resizeMode="horizontal|vertical"
    android:updatePeriodMillis="10000" >

</appwidget-provider>

以及小部件布局本身的代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent" android:layout_height="match_parent"
    android:id="@+id/layout" android:background="@drawable/yellow">

    <TextView android:id="@+id/TextView01" android:layout_width="match_parent"
        android:layout_height="match_parent" style="@android:style/TextAppearance.Medium"
        android:layout_gravity="center" android:textColor="#000000"></TextView>

</LinearLayout>

我也尝试将其添加到清单中,但它没有解决问题

<supports-screens
    android:smallScreens="true"
    android:normalScreens="true"
    android:largeScreens="true"
    android:xlargeScreens="true"
    android:anyDensity="true" />

我错过了什么会导致我的小部件无法填充平板电脑上的整个单元格区域?

小部件比较的屏幕截图

4

1 回答 1

1

找到了解决方案!你只需要添加

<uses-sdk android:targetSdkVersion="8" />

进入清单。任何低于 14 的 targetSdk 都可以工作,并且允许您使用完整的单元格区域,因为直到 Android 4.0 - api 14 才实现小部件的自动填充。

于 2012-08-18T06:29:33.937 回答