求解啊ListView选中项改变背景色彩后,下滚的那个也被改变了

求解啊:ListView选中项改变背景颜色后,下滚的那个也被改变了
比方说,我的手机屏幕上的ListView一共可以显示15行,我如果选中第1行,那么第1行的背景颜色被改变,但第16行也被改变了,求解啊,我改变背景的代码如下:
private View oldLinearLayout;
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> paramAdapterView,
View paramView, int paramInt, long paramLong) {

if (beforeLinearLayout != null) {
oldLinearLayout.setBackgroundDrawable(null);
}

paramView.setBackgroundColor(Color.GREEN);
oldLinearLayout= paramView;
}
});


------解决方案--------------------
引用:
引用:大概的思路:

1. choose时保存下当前的selection,然后通知adapter去刷新view

2. 然后在getView根据当前的selection去填充当前的View

Java code?123456789//Adapter中    public void setSelected(int sele……



//Adapter中
        private int selected ;


public void setSelected(int selected) {
this.selected = selected;
notifyDataSetChanged();
}

        //在getView 判断当前的position 是否是selected中的
        if( position == selected){
               // 按压背景
         }else{
               // 正常背景
         }


//在Activity页面回调OnItemClickListener时
         adapter.setSelected(position);