2017-03-26 7 views
-3

Ich habe einen Spinner in einem AlertDialog. Das wird angezeigt, wenn auf FloatingActionButton geklickt wird.android - Nullpointer Fehler in ArrayList

final AlertDialog.Builder mBuilder = new AlertDialog.Builder(Main2Activity.this); 
View mView = getLayoutInflater().inflate(R.layout.add_connection, null); 
area = (Spinner) mView.findViewById(R.id.addArea); 

und ein Array, das im Spinner angezeigt werden soll.

final ArrayList<String> areaList = (ArrayList<String>)getIntent().getSerializableExtra("areaList");("Outside the onclick function of FloatingActionButton") 

ArrayAdapter<String> adapter = new ArrayAdapter<String>(Main2Activity.this, android.R.layout.simple_spinner_dropdown_item, areaList); 
area.setAdapter(adapter); 

Wenn ich jetzt laufe die App und klicken Sie auf die FloatingActionButton die App abstürzt und die folgenden Fehler angezeigt.

java.lang.NullPointerException: Attempt to invoke interface method 'int java.util.List.size()' on a null object reference 
at android.widget.ArrayAdapter.getCount(ArrayAdapter.java:344) 
at android.widget.AbsSpinner.setAdapter(AbsSpinner.java:115) 
at android.widget.Spinner.setAdapter(Spinner.java:520) 
at android.support.v7.widget.AppCompatSpinner.setAdapter(AppCompatSpinner.java:389) 
at trickandroid.cablevasul.Main2Activity$1.onClick(Main2Activity.java:56) 
at android.view.View.performClick(View.java:5637) 
at android.view.View$PerformClick.run(View.java:22433) 
at android.os.Handler.handleCallback(Handler.java:751) 
at android.os.Handler.dispatchMessage(Handler.java:95) 
at android.os.Looper.loop(Looper.java:154) 
at android.app.ActivityThread.main(ActivityThread.java:6126) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776) 

Hilfe mich mit ihm ..

+1

Sind Sie sicher, dass Ihre 'areaList' nicht null ist? – Henry

+0

überprüfen Sie einfach Ihre Intent-Daten und überprüfen, ob (getIntent(). HasExtra ("areaList")) und nicht gleich null ist –

Antwort

0

Es scheint, dass die getIntent().getSerializableExtra("areaList") kehrt null. Sie können die areaList loggen, um zu finden, ob es null ist.

Und überprüfen Sie die Intent enthält die areaList.

Verwandte Themen