2

我使用了下面的代码。

在我的清单文件中。

 <receiver android:name=".ButtonWidget" android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
                <!-- Broadcast Receiver that will also process our self created action -->
                <action android:name="<package name>.android.widget.buttons.ButtonWidget.ACTION_WIDGET_RECEIVER"/>
            </intent-filter>
            <meta-data android:name="android.appwidget.provider" android:resource="@xml/appwidget" />
        </receiver>

在我的xml文件夹appwidget文件中。

<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:minHeight="40dp"
    android:minWidth="40dp"
    android:updatePeriodMillis="0"
    android:initialLayout="@layout/widget_layout"

>
</appwidget-provider>

下面是我的widget_layout文件。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="40dp"
    android:layout_height="40dp"
    android:gravity="center"
    android:orientation="horizontal"
>
    <Button
        android:id="@+id/widget_ibtn_onoff"
        android:layout_width="0dp"
        android:layout_height="fill_parent"
        android:background="@drawable/widget"
        android:layout_weight="1"
    />

</LinearLayout>

drawable widget尺寸如下。

drawable-hdpi - 60px
drawable-ldpi - 30px
drawable-mdpi - 40px
drawable-xhdpi - 80px

在我的银河系中,如下图所示。 在此处输入图像描述

谢谢吉里什

4

1 回答 1

1

试试这个你的布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:orientation="horizontal">

    <Button
        android:id="@+id/widget_ibtn_onoff"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:background="@drawable/widget" />

</LinearLayout>
于 2013-05-29T07:19:32.553 回答