Изменить иконку на методе onReceive - виджет Android - PullRequest
1 голос
/ 10 января 2012

Я разработал виджет для Android с намерением щелкнуть значок текстового виджета. Для этого я установил действие и попробовал метод OnReceive action. Это код:

@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 для обновления элементов управления виджетом, но это не удалось. Как я могу выполнить свою цель? Извините за мой английский. Большое спасибо за все.

1 Ответ

3 голосов
/ 28 марта 2012
RemoteViews control = new RemoteViews(context.getPackageName(),
                    R.layout.widget);
            control.setTextViewText(R.id.textview1, "ExampleText");

            ComponentName cn = new ComponentName(context,
                    ButtonWidget.class);
            AppWidgetManager.getInstance(context).updateAppWidget(cn,
                    control);

Этот работает в OnReceive (), большое спасибо!

...