Widget实例可以添加多个并独立更新是本文要介绍的内容,主要是来了解并学习Widget实例的应用,具体内容的实现来看本文详解。本文的内容不多,主要是以代码来实现Widget实例的应用。
widget可以添加多个,但是要实现各个widget之间独立更新就不那么容易了,在onUpdate方法中appWidgetIds是系统更新的widget的id集合,要想每个widgeet都独立的更新就需要遍历每个id,并且将id发给更新服务
- public void onUpdate(Context context, AppWidgetManager appWidgetManager,
- int[] appWidgetIds) {
- for(int i = 0 ; i < appWidgetIds.length ; i ++){
- RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.main);
- //绑定点击事件打开的configure
- Intent activity = new Intent(context, WidgetConfigure.class);
- activity.setData(Uri.parse(String.valueOf(appWidgetIds[i])));
- PendingIntent mPendingIntent = PendingIntent.getActivity(context, 0, activity, 0);
- views.setTextViewText(R.id.textView, "londing......");
- views.setOnClickPendingIntent(R.id.main_layout, mPendingIntent);
- appWidgetManager.updateAppWidget(appWidgetIds[i], views);
- //绑定根新服务
- service.putExtra("appWidgetId", appWidgetIds[i]);
- service.putExtra("flag", 0);
- context.startService(service);
- }
- }
然后根据获得的id更新对应的widgetViews,上面例子中还为widget设置了点击事件,简单的widget可以省略。
小结:Widget实例可以添加多个并独立更新的内容介绍完了,希望通过本文的学习能对你有所帮助,希望通过Widget实例内容的学习能对你有所帮助!