2016-09-15 100 views
1

我正在开发Android屏幕窗口小部件。默认大小(如果我将Widget从Widget-List拖放到主屏幕上)设置为3x3,但我没有得到可以更改的位置。任何人都可以解释我如何设置另一个值的默认值?更改默认窗口小部件大小

+0

请看这[问题](http://stackoverflow.com/a/26613151/4260491)。 – BVantur

回答

0

您在appwidget提供商XML声明你的控件的默认大小(和其他属性):

https://developer.android.com/guide/topics/appwidgets/index.html

具体的minWidthminHeight属性:

<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android" 
    android:minWidth="40dp" 
    android:minHeight="40dp" 
    android:updatePeriodMillis="86400000" 
    android:previewImage="@drawable/preview" 
    android:initialLayout="@layout/example_appwidget" 
    android:configure="com.example.android.ExampleAppWidgetConfigure" 
    android:resizeMode="horizontal|vertical" 
    android:widgetCategory="home_screen"> 
</appwidget-provider> 

minWidthminHeight属性的值指定了默认情况下App Widget消耗的最小空间量。默认的主屏幕根据具有定义的高度和宽度的单元网格在其窗口中定位App Widgets。如果App Widget的最小宽度或高度值与单元格的尺寸不匹配,则App Widget尺寸向上舍入到最接近的单元格尺寸。下面

+0

谢谢,那正是我需要的。有没有办法将默认大小设置为整个页面? –

+0

我相信它只需要dp值,所以没有自动的方法来做到这一点,据我所知。 –

+0

@KenWolf有什么方法可以限制小部件的最大尺寸? –

0

您可以设置代码:

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

如果您想了解详细信息。请访问 https://www.tutorialspoint.com/android/android_widgets.htm