想在onReceive里面更新AppWidget的Textview,为什么不行? 放handler里面去更新UI,UI的更新,只能在主线程,完毕. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你这段代码写的少东西应该用AppWidgetManager的updateAppWidget方法调用下才会更新,参数是widgetId和RemoteView切记在onReceive不调用这个方法是不会更新的 RemoteView不是View,只是个代理,单单设置是不会有效果的,必须调用appWidgetManager.updateAppWidget(appWidgetIds, rvs)才会被发送到真实的View上 在onReceive()里面怎么获得appWidgetManager和appWidgetId啊? 在onReceive()里面怎么获得appWidgetManager和appWidgetId啊?AppWidgetManager appWidgetManager = AppWidgetManager .getInstance(context);//如果更新所有的widget,那么int[] widgetIDs = appWidgetManager .getAppWidgetIds(new ComponentName(context, NoteWidgetProvider.class));appWidgetManager.updateAppWidget(widgetIDs, views);//如果更新所有的widget,如果更新某一个widget,那么要从intent中得到id//当然这个widgetID时你事先知道的,比如我想要点击某个widget,去配置它Intent intent = new Intent(context, Editor.class); intent.setAction(TAG + appWidgetId); // setAction to make intent // unique or all widgets // will use one intent intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId); // intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | // Intent.FLAG_ACTIVITY_NEW_TASK); PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0); views.setOnClickPendingIntent(R.id.root, pendingIntent);//配置完成后给这个NoteWidgetProvider发送广播,从intent获取idint widgetID = intent.getIntExtra( AppWidgetManager.EXTRA_APPWIDGET_ID, -1);...appWidgetManager.updateAppWidget(widgetID, views); NoteWidgetProvider.class是我项目里的名称,你换成Timer_appwidget_provider就好了 Android 开发疑问 怎么把好123所有的电影信息添加到自己的数据库 android 启动一个摄像头录制视频并上传到服务器上 想做一个类似于个人相册的android程序,各位大牛给个指点。 android调用Webservice问题 急!!! 点击Notification为什么会重启一个Activity 各位大侠,帮帮忙 求助啊 适应横竖屏切换的问题 关于Genymotion启动出错的,求各路大神帮忙看一下 求android做服务端的有效方法? 自定义 适配器实现 GridView
应该用AppWidgetManager的updateAppWidget方法调用下才会更新,参数是
widgetId和RemoteView切记在onReceive不调用这个方法是不会更新的
在onReceive()里面怎么获得appWidgetManager和appWidgetId啊?
在onReceive()里面怎么获得appWidgetManager和appWidgetId啊?
AppWidgetManager appWidgetManager = AppWidgetManager
.getInstance(context);
//如果更新所有的widget,那么
int[] widgetIDs = appWidgetManager
.getAppWidgetIds(new ComponentName(context,
NoteWidgetProvider.class));
appWidgetManager.updateAppWidget(widgetIDs, views);//如果更新所有的widget,如果更新某一个widget,那么要从intent中得到id
//当然这个widgetID时你事先知道的,比如我想要点击某个widget,去配置它
Intent intent = new Intent(context, Editor.class);
intent.setAction(TAG + appWidgetId); // setAction to make intent
// unique or all widgets
// will use one intent
intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId);
// intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK |
// Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0,
intent, 0);
views.setOnClickPendingIntent(R.id.root, pendingIntent);//配置完成后给这个NoteWidgetProvider发送广播,从intent获取id
int widgetID = intent.getIntExtra(
AppWidgetManager.EXTRA_APPWIDGET_ID, -1);
...
appWidgetManager.updateAppWidget(widgetID, views);