2010-12-29 7 views

Antwort

7

Wie kann ich Android-Widgets so einschränken, dass immer nur eine Instanz vom Benutzer erstellt werden kann?

Sie können nicht.

Aber nur weil der Benutzer nach mehreren Instanzen Ihres App-Widgets fragt, bedeutet das nicht, dass Sie für jedes einzelne Daten verwalten müssen. Ignorieren Sie einfach die IDs und verwenden Sie die Methode updateAppWidget(), die keine IDs akzeptiert.

+0

@CommonsWare - haben Sie eine Idee, wie man eine generische Sendung sendet, ohne WidgetIds? Weil ich bestimmte Signale von einem "Service" habe und die Service-Operationen nicht mit Widget/View-Code mischen möchte. –

+0

@Sebastian Roth: Ich kann Ihren zweiten Kommentar aufgrund der langen Zeichenfolge in Ihrem ersten Kommentar nicht lesen. Erwägen Sie, den ersten Kommentar zu löschen oder Ihre Frage oder etwas zu bearbeiten. – CommonsWare

+0

@CommonsWare, fertig. Eigentlich habe ich jetzt einen Weg gefunden. In abstract: Definieren Sie eine Zählervariable, fügen Sie eine android hinzu: configure activity und verwalten Sie das Widget. Wenn es bereits sichtbar ist (counter == 1), dann benutze 'AppWidgetHost ah = new AppWidgetHost (this, 1024); ah.deleteAppWidgetId (mAppWidgetId); '. 1024 ist die magische Zahl für den Android Launcher. Diese Konfigurationsaktivität könnte transparent oder überhaupt nicht sein, aber sie könnte alles tun, was wir vorbereiten müssen. –

Verwandte Themen