我需要以編程方式更改按鈕background
。該按鈕放置在一個小部件中。更改窗口小部件中按鈕的背景:Android
我得到了一個改變背景顏色here的例子,但這只是爲了改變顏色,我想使用圖像而不是顏色。
有沒有什麼辦法以編程方式將背景圖像應用於按鈕?
謝謝
我需要以編程方式更改按鈕background
。該按鈕放置在一個小部件中。更改窗口小部件中按鈕的背景:Android
我得到了一個改變背景顏色here的例子,但這只是爲了改變顏色,我想使用圖像而不是顏色。
有沒有什麼辦法以編程方式將背景圖像應用於按鈕?
謝謝
而不是使用setBackgroundColor
像例子中,你鏈接,你應該能夠使用setBackgroundResource
我想到的。
我認爲你需要使用public void setBackgroundResource (int resid)
您可以使用此:
setInt(YouButtonId, "setBackgroundResource", YourImageResourceID);
使用setBackgroundResource
,而不是setBackgroundColor
。
在你的AppWidgetProvider類:
private RemoteViews v;
... in onUpdate:
v = new RemoteViews(context.getPackageName(), R.layout.widget);
...
icon = context.getResources().getIdentifier("ic_action_refresh_"+choosenTheme, "drawable", context.getPackageName());
v.setInt(R.id.wi_bu_refresh, "setBackgroundResource", icon);
其中:
圖標只是資源ID(由則getIdentifier方法動態發現每一個主題)。
R.layout.widget是小部件xml佈局。
R.id.wi_bu_refresh是窗口小部件佈局中的一個按鈕,您想要更改哪個背景。
希望它有幫助,歡呼聲。
是的,它的工作。 –
我已經試圖接受它。但只有4分鐘後我才能接受。 –
@SanjayJoshi請花時間:) –