Android Widget错误的大小

时间:2013-10-23 17:46:55

标签: java android android-widget widget

我有一个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?

1 个答案:

答案 0 :(得分:1)

  

App Widget布局应该灵活,调整大小以适应其父容器

所以,改变你的LinearLayout

android:layout_width="wrap_content"
android:layout_height="110dp"  

匹配父级

android:layout_width="match_parent"
android:layout_height="match_parent"