Android ApiDemo学习(四)Views——5 Grid

三个grid的例子。

从类的继承关系可以看到,gridview和listview、gallery、spinner一样,都是AdapterView的子类,用一个adapter来定义view内的项。

gridview是网格,默认会根据item的大小自动计算列宽。也可以自定义列宽或者列数。

  • Icon Grid:查找所有的Launcher中的应用程序图标,使用gridview显示

 

  • Photo Grid:显示一系列图片

 

  • Selection Mode:

将这个例子和IconGrid做对比。可以看到:item可以多选,顶部显示选择的item的个数。被选择的item背景变成蓝色。

1. setChoiceMode:

这个函数是从AbsListView继承而来,即listview和gridview都可以做这个操作,表示设置选择的模式,本例设为多选

CHOICE_MODE_NONE:默认

CHOICE_MODE_SIGNAL:单选

CHOICE_MODE_MULTIPLE:多选

 

2. setMultiChoiceModeListener:

这个函数是从AbsListView继承而来,即listview和gridview都可以做这个操作。用来处理Selection Mode的选择。当setChoiceMode为multiple时需要这个函数。表示多选后的监听器,即回调函数。

监听器中,当item被选择、或者取消选择时,显示被选择的item的个数。

 

3.自定义类CheckableLayout implements Checkable:

这个类是为了使被选择的item的背景变成蓝色。

 

4. adapter的getView:

每个item的显示都要调用getView。可看到,每个item显示的图标都被添加在CheckableLayout的实例中。这样的话,每个item背后都有一个CheckableLayout。这样可以实现选择item,背景变成蓝色。

你可能感兴趣的:(android,ListView,Signal)