Widget實例可以添加多個并獨立更新
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實例內容的學習能對你有所幫助!