Andrtoid控件之ListView开发技巧

在实际项目中,ListView是频繁用到的控件之一,在开发过程中总结一些有助于开发的知识:

ListItem之间的分隔线

android:divider="#ff0000"  可以是颜色和图片
android:dividerHeight="1px"  要显示分隔线,分隔线的高度必须大于0
android:headerDividersEnabled="true"  headview下是否加分隔线
android:footerDividersEnabled="true"  footview是否加分隔线

ListView的滚动块
滚动块实际上是所可以用于所有view,有些属性是通用的,有些实行是listView特有的。

 android:scrollbars="vertical" 显示垂直、水平滚动块
 android:verticalScrollbarPosition="left"
 //垂直的scrollBar是显示在左边或者右边
android:scrollbarStyle="insideOverlay" 
inside表示显示在padding区域的内侧,outside表示显示在padding区域的外侧。Inset表示将自动增加padding以显示ScrollBar(这意味着内容区域将缩小),Overlay表示不会增加padding以显示ScrollBar,而是浮动在内容上面(可能会遮住内容)
  scrollBar的淡出效果
  android:fadeScrollbars //scrollbar不滚动隐藏  
  android:scrollbarDefaultDelayBeforeFade
  android:scrollbarFadeDuration//淡出的时间
  ScrollBar由两部分组成,一个是Track(滑道),一个是Thumb(滑块),其定制的属性为:
    android:scrollbarThumbHorizontal="@drawable/ic_launcher" 
    android:scrollbarThumbVertical="@drawable/ic_launcher"
    android:scrollbarTrackHorizontal="@drawable/ic_launcher"
    android:scrollbarTrackVertical="@drawable/ic_launcher"
    android:scrollbarSize="0dp"
  快速滚动条
    android:fastScrollEnabled="true"

头尾滑动效果

滑过Listview顶部和底部的画面效果
android:overScrollHeader="@drawable/ic_launcher"
android:overScrollFooter="@drawable/ic_launcher"
android:overScrollMode="never"  ifContentScrolls、always

显示的位置

android:stackFromBottom="true"  我们看到的视图将是Listview最底部的数据

选中效果

android:drawSelectorOnTop="true"  选中的效果是显示在上面还是下面,上面会覆盖文字

选择模式

android:choiceMode="singleChoice" 有四个值,联想出来后很好理解

绘图的质量

android:drawingCacheQuality
设置绘图时半透明质量。有以下值可设置:auto(默认,由框架决定)/high(高质量,使用较高的颜色深度,消耗更多的内存)/low(低质量,使用较低的颜色深度,但是用更少的内存)。

ListView事件响应情况

android:duplicateParentState
如果设置此属性,将直接从父容器中获取绘图状态(光标,按下等)。 见下面代码部分,注意根据目前测试情况仅仅是获取绘图状态,而没有获取事件,也就是你点一下LinearLayoutButton有被点击的效果,但是不执行点击事件

android:longClickable
设置是否响应长按事件.

边框渐变

android:fadingEdge
设置拉滚动条时 ,边框渐变的放向。none(边框颜色不变),horizontal(水平方向颜色变淡),vertical(垂直方向颜色变淡)。参照fadingEdgeLength的效果图
android:fadingEdgeLength
设置 边框渐变的长度。

布局调整

android:fitsSystemWindows
设置布局调整时是否考虑系统窗口(如状态栏)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值