3 回答
![?](http://img1.sycdn.imooc.com/5458502c00012d4a02200220-100-100.jpg)
TA贡献1848条经验 获得超10个赞
getViewTypeCount()
getItemViewType(int position)
getItemViewType
.
在调用的对象中存储视图 ViewHolder
..它会提高速度,因为你不用打电话 findViewById()
每次 getView
方法。看见 创建一个符合所有属性组合的通用布局,如果当前位置没有,则隐藏一些元素。
![?](http://img1.sycdn.imooc.com/5458622b000117dd02200220-100-100.jpg)
TA贡献1777条经验 获得超10个赞
我知道如何创建自定义行+自定义数组适配器来支持整个列表视图的自定义行。但是,一个列表视图如何支持许多不同的行样式?
A ListView
AdapterView是一个视图 其子女由适配器决定。
abstract int getViewTypeCount()// Returns the number of types of Views that will be created ...abstract int getItemViewType(int position) // Get the type of View that will be created ...abstract View getView(int position, View convertView, ViewGroup parent) // Get a View that displays the data ...
覆盖 getView()
若要膨胀、填充和返回给定位置的所需视图,请执行以下操作。这个 getView()
方法包括通过 convertView
参数。
覆盖 newView()
若要对当前游标状态(即当前的“行”)进行充气、填充和返回所需的视图,还需要覆盖 bindView
以便小部件可以重用视图]
定义 SimpleCursorAdapter.ViewBinder
带着 setViewValue()
方法对给定行(当前游标状态)和数据“列”进行充气、填充和返回所需的视图。该方法只定义“特殊”视图,并遵从SimpleCursorAdapter对“普通”绑定的标准行为。
添加回答
举报