NullPointerException Warnung auf getView () innerhalb onActivityCreated / onStart / onViewCreated Methode

Ich kenne getView() könnte null in onCreateView() -Methode zurückgeben, aber selbst wenn ich den unten stehenden Code in onActivityCreated() , onStart() oder onViewCreated() Methoden, zeigt es immer noch die Warnung über eine mögliche NullPointerException in Android Studio (obwohl Mein Programm läuft ohne Ausgabe). Wie kann ich diese Warnung loswerden?

Ich verwende Fragmente.

Code:

 datpurchased = (EditText) getView().findViewById(R.id.datepurchased); //datpurchased defined as instance variable in the class 

Warnung:

Methodenaufruf 'getView () findViewById (R.id.datepurchased)' kann 'java.lang.NullPointerException' erzeugen

  • NullPointer auf toLowerCase, aber ich benutze diese Methode nicht überall
  • NullPointerException bei android.widget.AbsListView.contentFits (AbsListView.java:722)
  • NullPointerException auf onSaveInstanceState mit AndroidFragments
  • Erweiterbare Listenansicht ohne Kinder
  • Android SDK Content Loader fehlgeschlagen mit NullPointerException
  • Problem beim Abrufen von ConnectivityManager in einem Gerät mit Multi-Sim
  • NullPointerException in SharedPreferences Android
  • Kann die Absicht, die von einem BroadcastReceiver erhalten wird, null sein?
  • One Solution collect form web for “NullPointerException Warnung auf getView () innerhalb onActivityCreated / onStart / onViewCreated Methode”

    Android Studio basiert auf IntelliJ IDEA, und dies ist eine Funktion von IntelliJ, die Ihnen Warnungen zum Zeitpunkt der Kompilierung gibt, wenn Sie nicht überprüfen, ob ein Objekt, das von einer Methode zurückgegeben wird, null bevor es verwendet wird.

    Ein Weg, um dies zu vermeiden ist Programm in der Art, die immer auf null oder Fänge NullPointerException , aber es kann sehr ausführlich werden, vor allem für Dinge, die Sie wissen, wird immer ein Objekt zurückgeben und niemals null .

    Eine andere Alternative ist, die Warnungen auf solche Fälle zu unterdrücken, indem sie Anmerkungen wie @SuppressWarnings für Methoden verwenden, die Objekte verwenden, die du kennst, kann niemals null sein:

     @SuppressWarnings({"NullableProblems"}) public Object myMethod(Object isNeverNull){ return isNeverNull.classMethod(); } 

    Oder in Ihrem Fall eine Line-Level-Unterdrückung:

     //noinspection NullableProblems datpurchased = (EditText) getView().findViewById(R.id.datepurchased); //datpurchased defined as instance variable in the class 

    Seien Sie sicher, dass die Objekte wirklich niemals null sein können.

    Weitere Informationen zu IntelliJs @NotNull und @Nullable Annotationen finden Sie hier und mehr über Inspektionen und Unterdrückung hier .

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.