我有一个Android小部件。我希望它是4个单元格宽度和2个单元格高度。现在,小部件的大小是4乘4(出于某种原因)。奇怪的是,小部件的内容,即框架(根据this definition)的尺寸很小。 因此,大多数主屏幕都是空白的,但我无法重新定位小部件(似乎它需要我主屏幕上的所有4 x 4单元格)。 这是我的widget-provider布局文件的代码:
<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:initialLayout="@layout/widget_demo"
android:minHeight="110dp"
android:minWidth="250dp"
android:updatePeriodMillis="1800000"
>
</appwidget-provider>
这是小部件布局:
<?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="110dp"
android:orientation="vertical"
android:layout_margin="1sp"
android:background="@android:drawable/alert_dark_frame" >
<TextView
android:id="@+id/widgetTextView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="some_text"
android:textColor="#FFFFFF"
android:textSize="30dp" />
<Button
android:id="@+id/widget_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="some_text"
android:textSize="20dp"/>
</LinearLayout>
有什么问题?为什么需要4乘4而不是4乘2?
答案 0 :(得分:1)
App Widget布局应该灵活,调整大小以适应其父容器
所以,改变你的LinearLayout
android:layout_width="wrap_content"
android:layout_height="110dp"
匹配父级
android:layout_width="match_parent"
android:layout_height="match_parent"