Variable 'snackbar' wurde möglicherweise nicht initialisiert

8

Ich erhalte die folgende Fehlermeldung: Variable "snackbar" might not have been initialized .

Das Folgende ist Teil meines MainActivity.java -Codes:

%Vor%

Ich hatte die akzeptierte Stack Overflow Antwort hier gelesen und es schlägt vor, dass ich snackbar unmittelbar nach public class NetworkChangeReceiver extends BroadcastReceiver initialisiere. Also habe ich den Code folgendermaßen geändert:

%Vor%

Aber das gibt mir einen Fehler Variable "snackbar" is accessed from within inner class, needs to be declared final und eine Warnung Method invocation "snackbar.dismiss()" may produce "java.lang.NullPointerException" .

Irgendwelche Vorschläge, wie Sie das lösen können? Danke!

    
Community 04.02.2016, 12:14
quelle

2 Antworten

8

Teilen Sie Ihre verketteten Methodenaufrufe auf:

%Vor%

Auf diese Weise wird snackbar definitiv zugewiesen, bevor Sie OnClickListener erstellen.

    
Andy Turner 04.02.2016, 12:18
quelle
-5

Als Workaround für

  

Variable "snackbar" is accessed from within inner class, needs to be declared final

Sie können diese Variable zu einem abschließenden Ein-Element-Array machen

    
Meegoo 04.02.2016 12:21
quelle

Tags und Links