1. Hast Du Lust, bei uns mitzuarbeiten und das AH-Team zu verstärken? Alle Details zu dieser aktuellen Herausforderung findest Du hier.
  1. FireRider, 28.02.2011 #1
    FireRider

    FireRider Threadstarter Junior Mitglied

    Hallo zusammen

    Ich habe wieder mal ein Problem.
    Und zwar möchte ich mein Widget aus einer Activity heraus updaten, d.h. wenn dort ein Button gedrückt wird, sollen sich die im Widget angezeigten Daten ändern.

    Mein Update-Prozess aus der Activity sieht so aus:

    Code:
    AppWidgetManager awm = AppWidgetManager.getInstance(this);
        		ComponentName cn = new ComponentName(this, stundenplanprovider.class);
        		int[] ids = awm.getAppWidgetIds(cn);
        		Intent updateWidget = new Intent();
        		updateWidget.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, ids);
        		updateWidget.setAction(AppWidgetManager.ACTION_APPWIDGET_UPDATE);
        		getApplicationContext().sendBroadcast(updateWidget);
    Das Widget selber hat eine überschriebene onReceive Methode, die die onUpdate Methode aufruft, wenn ein Intent reinkommt.

    Code:
    @Override
    	public void onReceive(Context context, Intent intent) {
    		AppWidgetManager awm = AppWidgetManager.getInstance(context);
    		onUpdate(context, awm, intent.getIntArrayExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS));
    	}
    Im onUpdate wird erstmal geprüft, ob eine Einstellung in den SharedPreferences true oder false ist (wird in der Activity ebenfalls gesetzt) und je nachdem werden andere Daten aus der SQLite-Datenbank geholt.
    Jetzt das Problem, wenn ich mit Log.v einen Teil der Daten ausgebe (direkt eine Zeile bevor der Text der Views gesetzt wird) dann stimmen die Daten. Allerdings ändert sich am Widget überhaupt nichts.
    Wenn das Handy aber neugestartet wird, dann werden die richtigen Daten angezeigt.

    Beispiel:
    Widget zeigt Standardmässig Daten A an.
    In Activity wird Button gedrückt, boolean in den Settings wird geändert, Log zeigt Daten B an, aber Widget zeigt immer noch A an.

    Ich hoffe ich konnte das verständlich erklären.
    Kann mir jemand helfen?

    Gruss, FireRider
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[OFFEN] Widget zeigt keine ImageView an. Android App Entwicklung 18.09.2017
[ERLEDIGT] Widget reagiert nicht auf Click mit anschliessendem Http-Request Android App Entwicklung 04.07.2017
Widget aus vorhandener App Android App Entwicklung 21.12.2016
Du betrachtest das Thema "Widget onUpdate" im Forum "Android App Entwicklung",