您的位置:首页 > 其它

ListView与GridView的属性讲解

2016-01-07 11:58 281 查看
ListView与GridView是Android开发中使用比较多的两个控件,因为我是个菜鸟,我想多知道里面属性的含义,所以在此记录一下。

ListView属性:

1.ListView是一个用来纵向展示条目的视图。条目的内容是通过adapter设置进去的

2.android:divider 在列表条目之间显示的drawable或者color

3.android:dividerHeight 用来指定divider的高度

4.android:entries 构成listview的数组资源的引用。对于某些固定的资源,这个属性提供了比在代码中添加资源的更加简便的方法。

5.android:footerDividerEnabled 当设为false时,listview将不会在各个footer之间绘制divider的,默认为true;

6.android:headerDividerEnabled 当设为false时,listview将不会在各个header之间绘制divider的,默认为true;

7.android:cachecolorHint 表明这个列表的背景始终以单一、固定的颜色绘制,可优化绘制过程。 当value

为“#000000”时,表示为透明的,当其他颜色的时候,指定该颜色为listview的背景。如果不使用会在选中的条目下面

出现一个空间黑色底色的情况,影响整体美观。

8.android:scrollingCache 设置在滚动时是否使用绘制缓存,若为true,则将使滚动表现更快速,但会占用更多内存,默认为true

9.android:fastScrollEnabled 设置是否允许使用快速滚动滑块

10.android:drawSelectorOnTop 若为true,选择器将绘制在条目的上层,内容会被遮住。默认为false;为false时,选择

器绘制在条目的下方,成为背景色。

11.android:listSelector 设置选中项显示的可绘制对象 ,可以是图片也可以是颜色。若是不用,在选中某个条目的时候背景会显示黄色的。

12.android:choiceMode 为视图指定选择的模式。可选的类型有:none、singlechoice、multiplechoice、

multiplechoiceModal none是普通模式 singlechoice是单选模式 multiplechoice与multiplechoiceModal都是多选模式

但是这两种模式是有区别的:multiplechoice在选择item的情况下,也能响应item普通的点击事件。但是

multiplechoiceModal本身是具有排斥性的,一旦有一个item被选中,即进入多选状态,item的点击事件就会被屏蔽。

13.android:smoothScrollbar 设置平滑滚动特性的状态。为真时,列表会使用更精确的基于条目在屏幕上的可见像素

高度的计算方法。默认为真。如果你的适配器需要绘制可变高的条目,他应该设为假。当该属性为真时,你在适配器

在显示变高条目时,滚动条的把手会在滚动的过程中改变大小。当设为假时,列表只使用适配器中的条目数和屏幕上

的可见条目来决定滚动条的属性。

14.android:stackFromBottom 设置Listview或GridView是否从底部开始显示内容。.

15.android:textFilterEnabled 设置是否开启文本过滤器 当设为真时,列表会将结果过滤为用户类型。前提是这个列

表的Adapter必须支持Filterable接口。

16.android:transcriptMode 设置该属性可以将安卓平台的控件自动滑动到最底部

有三种模式:(1) disabled 表示禁用transcriptMode 也是默认的

(2) normal 当新条目添加进列表并准备好显示的时候 列表会自动滑动到底部显示最新条目

(3) alwaysScroll 列表会自动滑动到底部,无论新条目是不是已经准备好显示

17.android:addStateFromChildren 设置整个viewgroup的drawable状态是否也包含子控件的drawable状态。

该属性用于当子控件获得焦点的时候作为一个组获得焦点出现。也就是当子控件获得焦点的时候,整个viewgroup的

drawable发生改变。

18.android:alwaysDrawnwithCache 设置viewgroup在绘制子view的时候是否一直使用绘图缓存。默认为true;

19.android:animationcache: 设置布局在绘制动画效果时是否为其子view创建绘图缓存。若为true,将消耗更多的内存,要求持续时间更长的初始化过程,表现效果更好。默认为true

20.android:clipChildren 设置子view是否受限于在自己的范围内绘制。若为false,如果子view超出了边界的范围可以绘制在边界外。默认为true;

21.android:clipTopadding 设置布局间是否有间距 默认为true;

22.android:descendantFocusability 定义当寻找一个焦点view的时候,父控件与子控件之间的关系

(1)beforeDescendants 父控件会比子控件先获取焦点

(2)afterDescendants 父控件比子控件后获得焦点

(3)blockDescendants 父控件会阻止子控件获得焦点

23.android:layoutAnimation 定义当viewgroup第一次展开时的动画效果,也可人为地在第一次展开时调用

24.android:persistentDrawingCache 设置绘图缓存的持久性

none:当使用过后不保留绘图缓存

animation:在layout-animation之后保留绘图缓存

all always保留绘图缓存

scrolling 在scroll之后保留绘图缓存

常用的public方法:

(1)void addFooterView(View v) 增加一个固定在列表底部的view 参数v是要添加的view对象

(2) void addFooterView(View v,Object data,boolean isSelectable) 增加一个固定在列表底部的view

参数v是要添加的view data是与view绑定的数据 isSelectable 设置是否可选

(3)void addHeaderView(View v) 增加一个固定在列表顶部的view

(4)void addHeaderView(View v,Object data,boolean isSelectable) 增加一个固定在列表顶部的view

参数v是要添加的View data 是与view绑定的数据 isSelectable 设置是否可选

(5) boolean removeFooterView(View v) 去除一个之前添加的view 参数v是要删除的view 删除成功返回true;

(6)boolean removeHeaderView(View v) 去除一个之前添加的view 参数v是要删除的view,删除成功返回true;

2.响应事件方法:

(1) boolean onKeyDown(int keyCode,KeyEvent event) 当按下键时响应

(2) boolean onKeyMultiple(int keyCode,int repeatCount,KeyEvent event) 重复按下键时响应 repeatCount为按下次数

(3)boolean onKeyUp(int keyCode,keyEvent event) 当键被释放时调用

3.get方法:

(1)ListAdapter getAdapter();返回listview正在使用的adapter

(2) Drawable getDevider(); 以drawable的形式返回devider

(3)boolean getItemsCanFocus();返回是否有可获得焦点的条目

(4)Drawable getOverScrollFooter();返回绘制在所有条目之下的drawable

(5)Drawable getOverScrollHeader();返回绘制在所有条目之上的drawable

(6)int getMaxScrollAmount();当前滚动视图响应箭头事件能够滚动的最大数

4.set方法

(1)void setSelection(int position); 设置被选中的条目 如果参数小于0,则position为0的条目将被选中

(2) void setSelectionAfterHeaderview(); 设置选中headerview下方第一条条目

(3) void setRemoteViewAdapter(Intent intent);为此AbListview设置一个通过intent连接到RemoteViewService而提供的远程视图适配器

GridView的属性:

1.android:numColumns 指的是要显示出来的列数 auto_fit 设置为自动

2.android:columnWidth 指的是每列的宽度,也就是item的宽度

3.android:stretchMode 指的是缩放模式 也就是如何填满空余的位置 如果设置为columnwidth 就是将剩余的位置分配给每列 如果为SpacingWidth 则是将剩余的位置分配给列与列之间的空隙

4.android:verticalSpacing 指的是两行之间的距离

5.android:horizontalSpacing 指的是两列之间的距离

6.android:CacheColorHint 指的是拖动条目时,条目的背景颜色

7.android:listselector 指的是选中条目时,条目的底色

8.android:scrollbars 指的是滑动条的显示模式

9.android:fadeScrollbars 指的是设置滚动条的自动显示跟隐藏

10.android:fastScrollEnabled 设置是否支持快速滑动

11.android:transcriptmode 指的是动态添加数据的时候,自动将最新的条目展示在可视范围内

12.android:stackfromBottom 指的是列表显示在你的列表的最下方

13.android:drawSelectorOnTop 指的是设置drawable显示在上方还是下方还是正常
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: