亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

更新和管理多個主屏幕小部件如何在 Java 中工作?

更新和管理多個主屏幕小部件如何在 Java 中工作?

人到中年有點甜 2023-06-08 21:03:47
我最近開始用 Java 開發小部件,但在使用和管理多個小部件時,我并不完全確定一般概念。我正在使用 AppWidgetProvider 來更新小部件 UI 并注冊點擊監聽器。我希望 onUpdate() 方法具有所有 appWidgetIds 或需要更新的小部件的 appWidgetIds。但是截至目前,我將始終獲得最近最少創建的小部件的 ID,無論單擊哪個小部件。有一次我收到了到目前為止已創建的所有 widgetId,但在我放置另一個 widgetId 后發生了變化。代碼 getIntArrayExtra(); 似乎也存在同樣的問題;最后,我想要多個小部件來顯示單個數據,并且當我單擊其中一個時,它們會自行更新或同時更新。我還沒有找到一種方法將單個數據綁定到單個小部件并獲取小部件本身(因為它在放置另一個小部件后不會顯示在 ID 中)。如果您能在下面的代碼中添加一些解釋性背景信息或指出一些問題,將非常有幫助,謝謝!公共類幻燈片擴展 AppWidgetProvider {@Overridepublic void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {    Intent intent = new Intent(context, UpdateSlideshowService.class);    intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, appWidgetIds);    context.startService(intent);}公共類 UpdateSlideshowService 擴展服務 {@Overridepublic void onStart(Intent intent, int startId) {    AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(this.getApplicationContext());    int[] allWidgetIds = intent.getIntArrayExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS);    for (int widgetId : allWidgetIds) {        int number = (new Random().nextInt(100));        Intent clickIntent = new Intent(this.getApplicationContext(), Slideshow.class);        clickIntent.setAction(AppWidgetManager.ACTION_APPWIDGET_UPDATE);        clickIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, allWidgetIds);        PendingIntent pendingIntent = PendingIntent.getBroadcast(getApplicationContext(), 0, clickIntent,                PendingIntent.FLAG_UPDATE_CURRENT);        RemoteViews remoteViews = new RemoteViews(this.getApplicationContext().getPackageName(),                R.layout.slideshow);        remoteViews.setTextViewText(R.id.update, "Random: " + number);        remoteViews.setOnClickPendingIntent(R.id.update, pendingIntent);        appWidgetManager.updateAppWidget(widgetId, remoteViews);    }    stopSelf();    super.onStart(intent, startId);}
查看完整描述

目前暫無任何回答

  • 0 回答
  • 0 關注
  • 140 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號