ウィジェットがあり、ユーザーがボタンをクリックしたときに画像を変更したいと考えています。どうすればできますか?RemoteView メソッドには、setOnClickPendingIntent しか見つかりません...新しいインテントを開始する必要があり、この新しいアクティビティに変更を実装する必要がありますか?
ありがとう
ウィジェットがあり、ユーザーがボタンをクリックしたときに画像を変更したいと考えています。どうすればできますか?RemoteView メソッドには、setOnClickPendingIntent しか見つかりません...新しいインテントを開始する必要があり、この新しいアクティビティに変更を実装する必要がありますか?
ありがとう
この例を参照してください:https ://github.com/commonsguy/cw-advandroid/tree/master/AppWidget/PairOfDice
ソースコードは以下の通りです
@Override
public void onUpdate(Context ctxt, AppWidgetManager mgr, int[] appWidgetIds) {
ComponentName me=new ComponentName(ctxt, AppWidget.class);
mgr.updateAppWidget(me, buildUpdate(ctxt, appWidgetIds));
}
private RemoteViews buildUpdate(Context ctxt, int[] appWidgetIds) {
RemoteViews updateViews=new RemoteViews(ctxt.getPackageName(), R.layout.widget);
Intent i=new Intent(ctxt, AppWidget.class);
i.setAction(AppWidgetManager.ACTION_APPWIDGET_UPDATE);
i.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, appWidgetIds);
PendingIntent pi=PendingIntent.getBroadcast(ctxt, 0 , i, PendingIntent.FLAG_UPDATE_CURRENT);
updateViews.setImageViewResource(R.id.left_die, IMAGES[(int)(Math.random()*6)]);
updateViews.setOnClickPendingIntent(R.id.left_die, pi);
updateViews.setImageViewResource(R.id.right_die, IMAGES[(int)(Math.random()*6)]);
updateViews.setOnClickPendingIntent(R.id.right_die, pi);
updateViews.setOnClickPendingIntent(R.id.background, pi);
return(updateViews);
}