使用 BaseAdapter 而不回收(每次调用 getView(...) 时都会膨胀视图)我的动画和在我的列表项中滑动的功能工作正常(它也有从网络加载的图像)。
@Override
public View getView( final int position, View convertView, ViewGroup parent ) {
View view = myViews.get( position );
final Promotion i = getItem( position );
view = a.getLayoutInflater().inflate( R.layout.butik_item, parent, false );
/* More code */
}
}
体验:性能差,滚动不流畅,动画+滑动有效。
将 BaseAdapter 与 Recycling 一起使用(带有视图的数组和带有 ViewHolder 的空检查)
Map<Integer, View> myViews = new HashMap<Integer, View>();
@Override public View getView( int position, View convertView, ViewGroup parent ) {
final ViewHolder holder;
View v = myViews.get( position );
if ( v == null ) {
v = a.getLayoutInflater().inflate( R.layout.butik_item, parent, false );
/* More code */
}
v.setTag( position + "" );
myViews.put( position, v );
}
体验:出色的性能和流畅的滚动,动画不起作用,滑动非常缓慢。
我能做些什么来解决这个问题?