• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Android - Widget nie raguje na kliknięcie

0 głosów
322 wizyt
pytanie zadane 5 listopada 2016 w Android, Swift, Symbian przez Michał Nieruchalski Nowicjusz (180 p.)

Cześć wszystkim. Mam problem z widgetem. Po kliknięciu na komponent który ma za zadanie wyświetlić komunikat toast (R.id.year) nie dzieje się nic. Natomiast interakcja z komponentem R.id.set jest udana. O co chodzi i co mogę z tym zrobić ?

package com.nieruchalski.reminder;

import android.appwidget.AppWidgetManager;
import android.appwidget.AppWidgetProvider;
import android.content.Context;
import android.widget.RemoteViews;
import android.app.PendingIntent;
import android.content.Intent;
import android.widget.Toast;

/**
 * Created by Michał on 2016-11-04.
 */
public class ReminderProvider extends AppWidgetProvider {

    public final static String SETYEAR = "SETYEAR";

    @Override
    public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
        for(int i=0; i<appWidgetIds.length; i++)
        {
            Toast.makeText(context, "onUpdate", Toast.LENGTH_SHORT).show();
            RemoteViews view = new RemoteViews(context.getPackageName(), R.layout.widget_layout);
            Intent intent = new Intent(context, setReminder.class);
            PendingIntent pi = PendingIntent.getActivity(context, 0, intent, 0);
            view.setOnClickPendingIntent(R.id.set, pi);

            Intent yearIntent = new Intent(context, ReminderProvider.class);
            yearIntent.setAction(SETYEAR);
            PendingIntent pendingYear = PendingIntent.getBroadcast(context, 0, intent, 0);
            view.setOnClickPendingIntent(R.id.year, pendingYear);



            appWidgetManager.updateAppWidget(appWidgetIds[i], view);

        }
    }

    @Override
    public void onReceive(Context context, Intent intent) {
        super.onReceive(context, intent);
        if(intent.getAction().equals(SETYEAR))
        {
            Toast.makeText(context, "Year clicked ! ", Toast.LENGTH_SHORT).show();
        }
    }
}

 

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
0 odpowiedzi 169 wizyt
pytanie zadane 11 marca 2017 w C i C++ przez L33TT12 Gaduła (3,950 p.)
0 głosów
1 odpowiedź 357 wizyt
pytanie zadane 10 maja 2015 w Inne języki przez Dissio Mądrala (5,830 p.)
0 głosów
1 odpowiedź 215 wizyt
pytanie zadane 14 stycznia 2020 w Java przez smokolisz Mądrala (6,340 p.)

93,632 zapytań

142,556 odpowiedzi

323,056 komentarzy

63,139 pasjonatów

Advent of Code 2025

Top 15 użytkowników

  1. 2900p. - dia-Chann
  2. 2870p. - DziarnowskiJ
  3. 2827p. - Łukasz Piwowar
  4. 2783p. - raydeal
  5. 2758p. - Adrian Wieprzkowicz
  6. 2713p. - rucin93
  7. 2579p. - Łukasz Eckert
  8. 2523p. - Maurycy W
  9. 2459p. - CC PL
  10. 2082p. - Michal Drewniak
  11. 1885p. - robwarsz
  12. 1851p. - Mariusz Fornal
  13. 1811p. - rafalszastok
  14. 1600p. - Rafał Trójniak
  15. 1588p. - Tomasz Bielak
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...