Я разработал виджет для Android с целью щелчка по значку текстового виджета. Для этого я установил действие, и я попробовал метод OnReceive action. Это код:
Изменить значок на onReceive метод - виджет Android
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(ACTION_WIDGET_NOTIF)) {
Bundle extras = intent.getExtras();
int appWidgetId = extras.getInt(AppWidgetManager.EXTRA_APPWIDGET_ID);
RemoteViews controles = new RemoteViews(context.getPackageName(),
R.layout.widgetcuatroxuno);
controles.setImageViewResource(R.id.btt,
R.drawable.ic_launcher_new);
AppWidgetManager.getInstance(context).updateAppWidget(appWidgetId, controles);
} else {
super.onReceive(context, intent);
}
}
Я знаю, что нужно AppWidgetManager обновить элементы управления виджета, но это не удалось. Как я могу выполнить свою цель? Извините за мой английский. Большое спасибо за все.
если кто-то есть такая же проблема, я нашел решение: @Override \t общественного недействительного OnReceive (контекст Контекста, Намерение намерения) { \t \t RemoteViews управления = новые RemoteViews (context.getPackageName(), \t \t \t \t R.layout.widget); \t \t, если (intent.getAction() равно (ACTION_WIDGET_CHANGE).) { \t \t \t control.setImageViewResource (R.id.bttn, \t \t \t \t \t R.drawable.ic_launcher_new); \t \t} else { \t \t super.onReceive (контекст, намерение); \t \t} \t \t ComponentName cn = new ComponentName (context, Widget.class); \t \t AppWidgetManager.getInstance (контекст) .updateAppWidget (cn, control); \t} –