metodo Quindi onUpdate chiamaAndroid Widget schermata Home: RemoteViews setRemoteAdapter (...) metodo non lavorare su API 11+
remoteViews.setRemoteAdapter(id, R.id.listview, intent)
al fine di applicare un adattatore per la listview nel widget.
C'è un pulsante nell'intestazione del widget che può modificare quale set di dati viene visualizzato dal listview (pensa in arrivo, outbox, asterisco, ecc per un ipotetico widget email). Quando faccio clic su quel pulsante, esso porta l'utente a un'attività che consente loro di scegliere quale set di dati visualizzare. Quando la selezione è fatta, il seguente codice viene eseguito:
Intent intent = new Intent(this, WidgetReceiver.class);
intent.setAction("android.appwidget.action.APPWIDGET_UPDATE");
intent.putExtra("notify", true);
intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, new int[] {R.xml.widget_provider});
sendBroadcast(intent);
Ciò richiede con successo il metodo onUpdate nella classe AppWidgetProvider del widget. Tuttavia, se dovessi alternare diversi tipi di set di dati, dopo 2-3 modifiche alle preferenze, il metodo setRemoteAdapter
smette semplicemente di funzionare. Ho registrato estesamente il processo e il metodo, che dovrebbe chiamare un servizio che a sua volta carica la classe RemoteViewsService.RemoteViewsFactory
per popolare il widget e il suo adattatore, non esegue alcuna di queste operazioni. Il primo paio di volte che cambi la preferenza, funziona come previsto. Ma poi si chiude.
Qualcuno ha idea di cosa sta succedendo qui?
HI JMRboosties. Saresti così gentile da condividere il tuo codice? Sto anche provando a mettere un ListView in un widget homescreen E aggiungere un'intestazione con alcuni pulsanti (che può cambiare il set di dati che viene visualizzato dalla listview). Sto sollevando difficoltà registrando i clic sui pulsanti dell'intestazione e aggiornando le visualizzazioni del listino. Txs – Hubert
Questo sembra accadere per tutti gli aggiornamenti - alla fine Android si annoia e si presuppone che tu abbia i risultati corretti:/Grazie @JMRboosties :) – Graeme
questo sembra non funzionare quando si aggiorna e la tua app viene sostituita da una versione più recente, qualsiasi suggerimento per risolverlo? – 2cupsOfTech