我知道您可以扩展BaseAdapter并覆盖getViewTypeCount()
和getItemViewType(postion)
方法并以这种方式获取各种行布局。
但是,我刚刚完成了一个教程,其中扩展了ArrayAdapter,并且getView(int position, View convertView, ViewGroup parent)
是唯一覆盖的方法。
在我看来,仅采用这种方法并使用if / switch位置来确定给定行的视图是否膨胀,就容易得多。
这是一个正确的假设,还是这种方法有问题?
干杯
最佳答案
没有您的假设是错误的。如果需要inflate
不同的View
,正确的方法是配对override
getViewTypeCount()/ getItemViewType(postion)
。这样,android将根据convertView
返回的内容为您提供不同的getViewTypeCount()
进行充气。
如文档所示:getViewTypeCount() Returns the number of types of Views that will be created