我不明白发生了什么
public class MainActivity extends Activity {
ArrayAdapter<String> aa;
ArrayList<ArrayList<String>> l=null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
place = (AutoCompleteTextView)findViewById(R.id.place);
aa=new ArrayAdapter<String(getBaseContext(),android.R.layout.simple_list_item_1,l.get(0) );
place.setAdapter(aa);
}
}
但是由于java.lang.NullPointerExeption
,创建新的ArrayAdapter实例会导致运行时错误。我不明白为什么以及如何解决这个问题: - /
答案 0 :(得分:2)
检查此行:
aa=new ArrayAdapter<String(getBaseContext(),android.R.layout.simple_list_item_1,l.get(0) );
这里使用l.get(0)为null,因为l永远不会被初始化。
答案 1 :(得分:0)
这里l.get(0)
投掷了NPE。您需要初始化ArrayList<ArrayList<String>> l
喜欢,
ArrayList<ArrayList<String>> l = new ArrayList<ArrayList<String>>();