机构类网站有哪些,福州网站制作策划,网上哪里有卖嗅探器,怎样建立自己的公众号在进行安卓开发的时候肯定避免不了使用listview#xff0c;而使用listview又不得不使用adapter#xff0c;adapter是适配器的意思#xff0c;如果要了解adapter请移步我的另一篇分享““listview学习之adapter初探””#xff0c;我们讲过几种常用的适配器#xff0c;今天…在进行安卓开发的时候肯定避免不了使用listview而使用listview又不得不使用adapteradapter是适配器的意思如果要了解adapter请移步我的另一篇分享““listview学习之adapter初探””我们讲过几种常用的适配器今天先来说说这个arrayadapter又叫做数组适配器。数组适配器我觉得需要好好学习的一个知识点就是分析它的构造方法了。
那么我们先从最简单的开始arrayadapter又叫做数组适配器是相比较其他适配器比较简单的一种它显示的数据比较单一只能用来显示一行文本信息当然对它可以进行重写今天暂且不谈arrayadapter的自定义。
arrayadapter在使用当中的形式是ArrayAdapterT,这里的T是泛型的意思如果对泛型不是很了解的话可以看看java中有关泛型的介绍。这里不再赘述。
下面我们来看看arrayadapter的构造方法 我们仔细看他的各个构造方法可以知道arrayadapter中适配的数据是字符串数组或者字符串集合分析里面的参数第一个参数都是context就是上下文的意思第二个参数是一个资源ID整型的resours表示的是一个展示数据项的布局的xml文件id然后我们看其他的参数String[] objects 和ListString objects表示填充的数据是字符串数组或者字符串集合这个比较好理解我们主要看一下int textViewResoursID这个参数有些人可能对这个参数比较陌生这肯定是你在使用arrayadapter连接数据的时候没有自定义数据布局了一般都使用系统自带的xml布局了我们知道arrayadapter一般是只能显示一行文本信息平常我们使用系统自带的数据布局也就罢了但是如果我们自定义了一个数据布局那么该如何与数据连接呢这时候这个参数就表示我们自定义数据布局当中的这个textview了。
总的来说创建一个ArrayAdapterT适配器对象我们需要三个方面的内容第一个是当前的上下文第二个是数据项显示的布局文件第三个就是数据源了。
分析到这相信你对arrayadapter已经有了简单的了解了吧那么我们继续向下探讨我们继续观察它的构造方法不看第一个看剩下的结果我们可以看到arrayadapter在使用的时候直接在构造法中绑定填充数据了可是第一个构造方法似乎不一样它并没有一开始就绑定数据这就表明创建适配器的时候不一定要立即绑定数据源可以随后根据实际情景进行绑定那么该如何绑定呢有以下几种方法 说到这我们来举个实际的例子来方便大家理解吧 public class MainActivity extends AppCompatActivity {ListView demoListview ;TextView demoTextview;ArrayAdapterString adapter;Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);demoListview (ListView)findViewById(R.id.demoListview);demoTextview (TextView)findViewById(R.id.demoTextview);//创建一个arrayadapter但是没有立即绑定数据adapter new ArrayAdapterString(this,R.layout.layout_listview,R.id.demoTextview);//单独对arrayadapter进行数据绑定adapter.add(这是第一个数据);adapter.add(这是第二个数据);//为listview设置适配器demoListview.setAdapter(adapter);}
}看一下运行效果 当然我们还可以这样添加数据
adapter.addAll(1,2);
看效果 还一种绑定数据的方法稍微复杂那么一点点我们需要先创建一个list数据集合然后通过ArrayList添加数据 ListString item new ArrayListString();item.add(王者荣耀);做完这一步我们可以通过上述构造方法中的第二个方法进行绑定数据代码如下 protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);demoListview (ListView)findViewById(R.id.demoListview);demoTextview (TextView)findViewById(R.id.demoTextview);ListString item new ArrayListString();item.add(王者荣耀);//创建一个arrayadapter但是没有立即绑定数据adapter new ArrayAdapterString(this,R.layout.layout_listview,R.id.demoTextview);//单独对arrayadapter进行数据绑定adapter.add(这是第一个数据);adapter.add(这是第二个数据);adapter.addAll(1,2);adapter.addAll(item);//为listview设置适配器demoListview.setAdapter(adapter);}
}
运行如下 arrayadapter的一些基本用法就分享这么多了关于arrayadapter我觉得还需要研究的就是他的自定义了后续会继续分享