实际图:
窗口向下滚动后的效果:
getview()的代码为:
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
// position为item的序号
View view = null;
if (convertView != null) {
view = convertView;
} else {
view = super.getView(position, convertView, parent);
}
if (position < 5) {
view.setBackgroundResource(R.drawable.goldclient);
}
return super.getView(position, view, parent);
}
恳请指点!
6 个解决方案
#1
解决了!
getview()的代码为:
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
// position为item的序号
View view = null;
if (convertView != null) {
view = convertView;
} else {
view = super.getView(position, convertView, parent);
}
if (position < 5) {
view.setBackgroundResource(R.drawable.goldclient);
}else{
view.setBackgroundResource(R.color.black);
}
return super.getView(position, view, parent);
}
getview()的代码为:
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
// position为item的序号
View view = null;
if (convertView != null) {
view = convertView;
} else {
view = super.getView(position, convertView, parent);
}
if (position < 5) {
view.setBackgroundResource(R.drawable.goldclient);
}else{
view.setBackgroundResource(R.color.black);
}
return super.getView(position, view, parent);
}
#2
哈哈,聪明,我刚想跟你说来着,getview默认在加载下面的item的时候是去拿上面已经构造好的item的view的,你上面的那些背景是黄色,下面那些直接那view的item用的实际就是同一个view,背景也就是黄色了
#3
谢谢wenyiqingnianiii,我实在当不起“聪明”二字,呵呵
#4
看了很多列表滚动的问起 其实都是一个问题 记住list的列表项的view是缓存显示的,是重用的 所以你要差异化显示的时候,一定要记住需要有个条件能够把你想要的列表项精确地筛选出来,然后设置此项的效果,就不会影响到别的列表项了
#5
#6
谢谢haoyizsw,谨记在心!
#1
解决了!
getview()的代码为:
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
// position为item的序号
View view = null;
if (convertView != null) {
view = convertView;
} else {
view = super.getView(position, convertView, parent);
}
if (position < 5) {
view.setBackgroundResource(R.drawable.goldclient);
}else{
view.setBackgroundResource(R.color.black);
}
return super.getView(position, view, parent);
}
getview()的代码为:
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
// position为item的序号
View view = null;
if (convertView != null) {
view = convertView;
} else {
view = super.getView(position, convertView, parent);
}
if (position < 5) {
view.setBackgroundResource(R.drawable.goldclient);
}else{
view.setBackgroundResource(R.color.black);
}
return super.getView(position, view, parent);
}
#2
哈哈,聪明,我刚想跟你说来着,getview默认在加载下面的item的时候是去拿上面已经构造好的item的view的,你上面的那些背景是黄色,下面那些直接那view的item用的实际就是同一个view,背景也就是黄色了
#3
谢谢wenyiqingnianiii,我实在当不起“聪明”二字,呵呵
#4
看了很多列表滚动的问起 其实都是一个问题 记住list的列表项的view是缓存显示的,是重用的 所以你要差异化显示的时候,一定要记住需要有个条件能够把你想要的列表项精确地筛选出来,然后设置此项的效果,就不会影响到别的列表项了
#5
#6
谢谢haoyizsw,谨记在心!