Resizable appwidgets in Android 3.1

9

Ich habe mich gefreut, dass die Unterstützung für größenverstellbare Appwidgets mit Android 3.1 erreicht wird, aber ich bin ratlos, wie sie funktionieren können.

Ich bin kein Appwidget-Neuling und habe kein Problem,

hinzuzufügen %Vor%

zu meiner Appwidget Definition XML. Und das funktioniert so weit wie es geht, das Widget ist nominell in der Größe veränderbar (langes Drücken darauf und Griffe erscheinen, mit denen ich den Rand auf verschiedene Größen ziehen kann).

Zwei Probleme allerdings:

Erstens scheint es nicht, dass mein Code aufgerufen wird, wenn die Größe des Widgets geändert wird. Ein Haltepunkt in meinem onReceive() -Handler wird nie getroffen.

Zweitens, in der Annahme, dass ich in meinen Code eindringen kann, kann ich nirgends in den Dokumenten sehen, wie die aktuelle Größe des Widgets aussieht. Ich benutze bereits Aufrufe von AppWidgetProviderInfo.minWidth und .minHeight , aber diese spiegeln nur die minimalen Dimensionen wider, die im XML angegeben sind, sie ändern sich zur Laufzeit nicht.

Also, wie soll man eigentlich ein veränderbares Widget implementieren?

    
String 22.06.2011, 10:43
quelle

1 Antwort

1
___ tag123xml ___ Die XML-Datei (Extensible Markup Language) ist ein flexibles, strukturiertes Dokumentformat, das Codierungsregeln für Menschen und Maschinen definiert. ___ tag123android ___ Android ist das mobile Betriebssystem von Google, das zum Programmieren oder Entwickeln von digitalen Geräten (Smartphones, Tablets, Automobile, Fernseher, Wear, Glass, IoT) verwendet wird. Verwenden Sie für Themen rund um Android Android-spezifische Tags wie android-intent, nicht intent, android-activity, nicht activity, android-adapter, nicht adapter usw. Bei anderen Fragen als der Entwicklung oder Programmierung, aber im Zusammenhang mit Android Framework, verwenden Sie Der Link: https://android.stackexchange.com. ___ antwort12884329 ___

Ich bin mir ziemlich sicher, dass es keine Möglichkeit gibt, die Größe des Widgets unter API 16 zu erhalten, und wenn das Widget unterhalb von API 16 in der Größe geändert wird, gibt es keine Absichtsübertragung.

Von API 16 onAppWidgetOptionsChanged () wurde hinzugefügt und dies wird aufgerufen, wenn die Größe Ihres Widgets geändert wird und Sie die Größe Ihres Widgets aus dem übergebenen Bundle abrufen können.

    
___ tag123userinterface ___ Das System, über das Menschen mit einem Computer interagieren, wird "UI" genannt, was für "Benutzeroberfläche" steht. Dieses Tag kann für UI-bezogene Programmierfragen verwendet werden. Beachten Sie, dass es eine separate Stack Exchange-Site für Benutzeroberflächen, Interaktionen mit dem Computer und Benutzererlebnis gibt: http://ux.stackexchange.com. ___ qstntxt ___

Ich habe mich gefreut, dass die Unterstützung für größenverstellbare Appwidgets mit Android 3.1 erreicht wird, aber ich bin ratlos, wie sie funktionieren können.

Ich bin kein Appwidget-Neuling und habe kein Problem,

hinzuzufügen %Vor%

zu meiner Appwidget Definition XML. Und das funktioniert so weit wie es geht, das Widget ist nominell in der Größe veränderbar (langes Drücken darauf und Griffe erscheinen, mit denen ich den Rand auf verschiedene Größen ziehen kann).

Zwei Probleme allerdings:

Erstens scheint es nicht, dass mein Code aufgerufen wird, wenn die Größe des Widgets geändert wird. Ein Haltepunkt in meinem %code% -Handler wird nie getroffen.

Zweitens, in der Annahme, dass ich in meinen Code eindringen kann, kann ich nirgends in den Dokumenten sehen, wie die aktuelle Größe des Widgets aussieht. Ich benutze bereits Aufrufe von %code% und %code% , aber diese spiegeln nur die minimalen Dimensionen wider, die im XML angegeben sind, sie ändern sich zur Laufzeit nicht.

Also, wie soll man eigentlich ein veränderbares Widget implementieren?

    
___ tag123widget ___ Ein Widget ist ein Element einer Benutzeroberfläche (GUI-Widget) oder einer eigenständigen (meist kleinen) Softwareanwendung (Desktop-Widget). Beim Computing eine Anwendung oder eine Komponente einer Schnittstelle, die es einem Benutzer ermöglicht, eine Funktion auszuführen oder auf einen Dienst zuzugreifen. ___ qstnhdr ___ Resizable appwidgets in Android 3.1 ___
IKavanagh 14.10.2012, 16:44
quelle

Tags und Links