在onReceive方法上更改图标 - 小部件Android

时间:2012-01-10 10:47:56

标签: android icons widget

我为Android开发了一个小部件,旨在点击文本小部件的图标。为此,我设置了操作,并尝试了OnReceive方法。这是代码:

@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 个答案:

答案 0 :(得分:3)

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()中工作,非常感谢!