Android小部件最大允许大小

时间:2014-02-12 11:31:36

标签: android android-widget

我们可以使用例如

设置小部件的MINIMUM大小
android:minHeight="40dp"
android:minResizeHeight="40dp"
android:minResizeWidth="40dp"
android:minWidth="40dp"

没有android:max___属性。

有没有办法限制可调整大小的小部件的最大尺寸?

(也许是我没有看到的调整大小回调或类似的东西?)


注意到文档说调整大小的常见用例是列表或网格。这不需要设置最大尺寸。

我的用例只是“客户端要求提供1x1或2x2 的单个窗口小部件”。他会得到他想要的东西,还是我必须为他改变主意?

3 个答案:

答案 0 :(得分:5)

  

有没有办法限制可调整大小的小部件的最大大小?

,但您可以通过在窗口小部件的XML文件中禁用水平或垂直重新调整大小来限制用户。

示例:仅适用于水平

<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:initialLayout="@layout/widget_layout"
android:minHeight="220dp"
android:minWidth="180dp"
android:resizeMode="horizontal"
android:updatePeriodMillis="0" 
android:previewImage="@drawable/widget_all_in_one_preview"/>

示例:仅适用于垂直

<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:initialLayout="@layout/widget_layout"
android:minHeight="220dp"
android:minWidth="180dp"
android:resizeMode="vertical"
android:updatePeriodMillis="0" 
android:previewImage="@drawable/widget_all_in_one_preview"/>

您也可以通过以下方式执行这两项操作:

android:resizeMode="horizontal|vertical"

确保您使用NinePatch张图片或以编程方式设置Background颜色。

OR 提供固定尺寸Widget以确保安全:)

我希望它有所帮助

答案 1 :(得分:2)

迟了几年,但也许要进行第二次布局,如果用户超过最大宽度/高度,则小部件将切换到该布局,并且尺寸不再增加到match_parent。

使用具有预定义最大高度/宽度的布局,并在框架布局内添加嵌套,以控制其在边界区域内的位置。

答案 2 :(得分:0)

正如@Sami Eltamawy 所说,您无法设置最大高度。但您可以在小部件布局中设置: layout_height="wrap_content"。

通过这种方式,小部件的大小将受限于您的内容。

我知道这对 OP 没有帮助,但可以帮助其他人