ListView的用法

ListView控件的使用

在日常生活中,人们经常会使用新闻客户端,淘宝客户端等应用程序。这些应用程序通常会有一个页面能展示多个条目的信息,并且每个条目信息的布局都是一样的。通常要实现这种功能都会想到创建大量相同的布局,但是这种方法并不利于程序的维护和扩展,为此,Android提供了一个ListView控件来解决上述问题。

 

一.List View以列表的形式展示具体数据内容,并且能够根据数据的长度自适应屏幕显示,以下是ListView的常见属性:

 

1. cacheColorHint属性,很多人希望能够改变一下它的背景,使他能够符合整体的UI设计,改变背景背很简单只需要准备一张图片然后指定属性android:background="@drawable/bg",不过不要高兴地太早,当你这么做以后,发现背景是变了,但是当你拖动,或者点击list空白位置的时候发现ListItem都变成黑色的了,破坏了整体效果。

如果你只是换背景的颜色的话,可以直接指定android:cacheColorHint为你所要的颜色,如果你是用图片做背景的话,那也只要将android:cacheColorHint指定为透明(#00000000)就可以了

 

2. divider属性,该属性作用是每一项之间需要设置一个图片做为间隔,或是去掉item之间的分割线

android:divider="@drawable/list_driver"  其中  @drawable/list_driver 是一个图片资源,如果不想显示分割线则只要设置为android:divider="@drawable/@null" 就可以了

 

3. fadeScrollbars属性,android:fadeScrollbars="true"  配置ListView布局的时候,设置这个属性为true就可以实现滚动条的自动隐藏和显示。

 

4. scrollbars属性,作用是隐藏listView的滚动条,

android:scrollbars="none"setVerticalScrollBarEnabled(true);的效果是一样的,不活动的时候隐藏,活动的时候也隐藏

 

5.dividerHeight属性:设置分割线高度

 

6.listSelector属性:设置ListView item选中时的颜色

 

二.使用ListView时需要注意的问题

 

1. 在使用ListView的时候,如果把ListView的高设置为wrap_content,它会反复读取多次数据,然后在ListView中把数据显示出来,效率非常低,这时候我们应该把ListView的高设置为match_parent,这样就能很好的解决读取多次再显示数据的问题了

 

2.  ListView并不能直接进行绑定,而是要通过代码。究其原因,因为它在绑定的时候,还需要设置图片等信息。而ListView一般都与TreeView配合使用,它的绑定行为是通过TreeView的点击来引发的

 

3. Listview中子控件的监听事件需要在adapter的getview方法中编写,而尽量不要在activity里写。如果在需要在getview中要用到viewholder则viewholder的编写方式应与原来常见的编写方式不同。不应出现如下部分内容:

if (view == null) {

 

...

 

} else

 

{

 

holder = (ViewHolder) view.getTag();

 

...

 

}

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值