标签:
ArrayAdapter类可以作为ListView等的适配器资源,并且可以动态向适配器中添加新的数据,这就是ArrayAdapter.Add()方法的作用。但是在使用该方法时如果出错,那就需要检查ArrayAdapter构造方法中的参数T[] objects了,如果这个参数设置成了固定大小的数据类型的话,是不能完成添加的。这个Add()方法其实是在向这个参数中动态添加数据,而如果这个参数大小固定,添加时会出现异常。
举个例子:
1 //创建ListView对象 2 ListView mylv = new ListView(this); 3 //要显示的数据 4 String[] str = new String[] {"Hello", "World"}; 5 //创建Adapter 6 ArrayAdapter arrayAdapter = new ArrayAdapter<String>( 7 this, 8 android.R.layout.simple_expandable_list_item_1, 9 str); 10 mylv.setAdapter(arrayAdapter); 11 setContentView(mylv); 12 13 //this.arrayAdapter.add("!");
这样也就可以显示ListView了,但是想要动态添加数据的话就会出现异常,原因是字符串数组str是一个定长的数组,它不可以动态添加一条字符串,也即第13行的代码运行时会出错。所以推荐使用List类,因为他可以动态添加数据。
标签:
原文地址:http://www.cnblogs.com/wustwl/p/4429673.html