1

有没有办法在运行时计算主页小部件的宽度。我想根据它的宽度添加可变数量的项目(图像视图),所以我想计算小部件在 dp 中的宽度。

4

1 回答 1

1

API v16 (4.1) 添加了一个onAppWidgetOptionsChanged回调,并根据App Widget 指南

在第一次放置小部件时以及任何时候调整小部件的大小时都会调用此方法。您可以使用此回调根据小部件的大小范围显示或隐藏内容。您可以通过调用 getAppWidgetOptions() 来获取大小范围,它会返回一个包含以下内容的 Bundle:

OPTION_APPWIDGET_MIN_WIDTH - 包含小部件实例的当前宽度的下限,以 dp 为单位。

OPTION_APPWIDGET_MIN_HEIGHT - 包含小部件实例的当前高度的下限,以 dp 为单位。

OPTION_APPWIDGET_MAX_WIDTH - 包含小部件实例的当前宽度的上限,以 dp 为单位。

OPTION_APPWIDGET_MAX_HEIGHT - 包含小部件实例的当前宽度的上限,以 dp 为单位。

不幸的是,对于 4.1 之前的设备,没有干净的替代品。

于 2013-04-28T14:00:10.943 回答