2010-06-17 96 views
2

我正在創建小部件,並且希望能夠讓用戶在配置活動期間在菜單中選擇小部件的大小。我的問題是,在appwidget-provider元數據xml中,塊大小已經在配置活動輸入之前設置。我需要能夠重置包含塊大小(minHeight,minWidth)的小部件信息,而無需添加不同大小的單獨小部件。有任何想法嗎?如何從小部件菜單中選擇小部件後調整其大小

回答

4

你不能這樣做。這是一個Android限制。創建幾個不同大小的小部件,將它們命名爲「YourWidget(small)」,「YourWidget(large)」等。或者「YourWidget 1x1」和「YourWidget 2x1」。您需要幾個幾乎完全相同的appwidget-provider xml ...

由於您還需要幾乎相同的提供程序和配置類,因此需要在其中定義一個具有所需代碼的基類,然後從它們繼承,像這樣:

公共類WidgetProvider2x1延伸WidgetProvider { @覆蓋 INT getWidgetStyle(){ 返回WidgetProvider.WIDGET_STYLE_2x1; }}

當您需要知道您的小部件的大小時,請在基類中調用getWidgetStyle()。

相關問題