当 Android 中的 Activity 内容更改时,小部件不更新
Posted
技术标签:
【中文标题】当 Android 中的 Activity 内容更改时,小部件不更新【英文标题】:Widget not updating when Activity content changes in Android 【发布时间】:2011-12-29 20:55:12 【问题描述】:我有一个小部件,其内容与实际应用中看到的非常相似,即图像和文本的比例较小。
我正在使用以下代码在活动 UI 更新后更新小部件 - 只是它不工作并且小部件不更新:
Intent i = new Intent(mContext, ExtensionOfAppWidgetProvider.class);
i.setAction(AppWidgetManager.ACTION_APPWIDGET_UPDATE);
mContext.sendBroadcast(i);
如果不删除小部件然后将其放回主屏幕,我无法调用 AppWidgetProvider 类的 onUpdate()。
感谢任何帮助。
谢谢。
【问题讨论】:
【参考方案1】:这是罪魁祸首……我的 AppWidgetProvider 类的 onReceive() 中缺少几行代码。
AppWidgetManager mgr = AppWidgetManager.getInstance(context);
int[] ids = mgr.getAppWidgetIds(new ComponentName(context, PromoStackWidgetProvider.class));
for(int id : ids)
mgr.notifyAppWidgetViewDataChanged(id, R.id.stack_view);
【讨论】:
【参考方案2】:确保您的小部件在您的 androidManifest.xml 中将自己作为注册的广播接收器
【讨论】:
以上是关于当 Android 中的 Activity 内容更改时,小部件不更新的主要内容,如果未能解决你的问题,请参考以下文章