我在使用listview两个类型条目复用的时候,出现来数组越界的异常,开始的时候我以为是数据传入的问题。浪费了我好久的时间来查找数据处理的逻辑。但是一直报错。后来在网上搜索问题才发现。
在list有多个条目的时候,adapter需要重写getItemViewType()和getViewTypeCount()两个方法。
getViewTypeCount()就是adapter条目的类型数量,
重点是getItemViewType()方法,返回类型必须是从0开始往上递增。
例如我有两个item类型,type=0或type=1,不能是type=1或type=2。而且type是整数类型而且是递增的,不能是type=0或type=2,因为根据android的api文档,type必须是0到getViewTypeCount() - 1的范围!