Android listView适配器错误

Android listView适配器错误,android,listview,Android,Listview,我定义这个字符串数组: String[] mCountryList = new String[200]; 然后用JSON数据填充变量,当我用ArrayAdapter使用该变量时: ArrayAdapter<String> myAdaptor = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1, mCountryList); 我怎样才能解决这个问题 我得到的s

我定义这个字符串数组:

String[] mCountryList = new String[200];
然后用JSON数据填充变量,当我用
ArrayAdapter
使用该变量时:

ArrayAdapter<String> myAdaptor = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1, mCountryList);
我怎样才能解决这个问题

我得到的stacktrace是:

2459-2459/com.example.behzad.behmytour E/AndroidRuntime﹕ 致命异常:主 进程:com.example.behzad.behmytour,PID:2459 java.lang.NullPointerException 位于android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java:394) 在android.widget.ArrayAdapter.getView(ArrayAdapter.java:362)中 在android.widget.AbsListView.obtainView(AbsListView.java:2263) 位于android.widget.ListView.makeAndAddView(ListView.java:1790) 在android.widget.ListView.fillDown(ListView.java:691)中 位于android.widget.ListView.fillFromTop(ListView.java:752) 位于android.widget.ListView.layoutChildren(ListView.java:1630) 在android.widget.AbsListView.onLayout(AbsListView.java:2091) 位于android.view.view.layout(view.java:14817) 位于android.view.ViewGroup.layout(ViewGroup.java:4631)


看起来您的一个项目是
null
,就像您可能认为的那样,但在您的问题中表达起来不容易理解。解决办法是,确保它不是

您可能希望使用
列表
而不是数组,然后只填充尽可能多的项目,而不是使用包含200个项目的静态数组,当然,除非您始终拥有200个项目

因此,请使用:

List<String> mCountryList = new ArrayList<String>();
然后填充它,类似这样:

mCountryList.add("Your String");

我认为您的错误在code
mCountryList[2]=null即使允许这样做,将字符串初始化为null也不是一个好主意,在Java中肯定不常见。只有对象才能设置为null


建议
mCountryList[2]=”改为空白字符串。

您能发布整个错误跟踪吗?@nr4bt java.lang.nullpointerException请显示整个堆栈跟踪,请,请。别让我们为难了。@Behzadrazzazi我们甚至不知道你得到错误的线路在哪里。通过添加
expanded stacktrace
扩展您的问题,并显示您得到错误的行。您还有代码提到
mCountryList
,然后再往下是
mCountr
,现在是什么?“null”是一个字符串,它不会给你一个NPE。谢谢,但是我怎样才能将我的字符串数组设置到我的适配器上呢?我是初学者,Android使用ArrayList是个好主意,比使用字符串数组String[]要好。
String[] mCountryList=new String[200];
mCountryList.add("Your String");