2011-07-23 174 views
0

我在窗口小部件上有一些ImageButton,我使用我自己的動作字符串處理它們,但它們都不是配置。按鈕..我沒有在我的XML設計更新期間,因爲我不需要更新任何東西,所以我所有的處理在onReceive(上下文,意圖)方法! 但仍然無法正常工作..我仍然沒有真正得到我們處理小部件中按鈕點擊的方式,任何人都可以幫忙嗎?即使有處理按鈕的核心概念。謝謝!Android小工具,處理按鈕點擊!

回答

1

將這個在你的AppWidgetProvider的onUpdate方法:該方法外

RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.widgetmain); 
Intent configIntent = new Intent(context, Call1.class); 
configIntent.setAction(ACTION_WIDGET_CONFIGURE); 
PendingIntent configPendingIntent = PendingIntent.getActivity(context, REQUEST_CODE_ONE, configIntent, 0); 
remoteViews.setOnClickPendingIntent(R.id.ImageButton01, configPendingIntent); 
appWidgetManager.updateAppWidget(appWidgetIds, remoteViews); 

變量:

public static String ACTION_WIDGET_CONFIGURE = "ConfigureWidget"; 
private static final int REQUEST_CODE_ONE = 10; 

在當你點擊widget的ImageButton01這個代碼,它啓動Call1.class 。

+0

我應該有多一個「RemoteViews」類型的對象,例如每個按鈕一個..? –

+0

是的,你可以,widget API有3個重載方法來更新widget的視圖,方法appWidgetManager.updateAppWidget(appWidgetId,yourRemoteView)更新視圖的widget有widgetID:appWidgetId。 – NguyenDat

+0

如果需要,您只能爲多個意圖使用一個remoteViews。 – erdomester