我为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来更新小部件控件,但它失败了。我怎样才能达到目的?对不起我的英语不好。非常感谢你的一切。
答案 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()中工作,非常感谢!