使用getChildAt()的Android列表视图行突出显示

时间:2015-01-28 03:37:54

标签: android listview

我在android中有一个包含24个项目的listview,其中7个在活动开始时可见。我希望能够突出显示任何单击行的背景,同时取消突出显示以前选定的行。以下是我到目前为止的情况:

 @Override
public void onItemClick(AdapterView<?> parent, View view, int newPosition, long id) {

       selectedView(oldPosition).setBackgroundColor(Color.TRANSPARENT);
       oldPosition = newPosition
       selectedView(newPosition).setBackgroundColor(getResources().getColor(R.id.selected)
}

 public View selectedView(int selection){
    View selectedView = listview.getChildAt(selection);

    return selectedView;
}

这很棒!但仅限于前7行...当我尝试单击屏幕上一次关闭的行时,getChildAt()返回null。我知道getChildAt(i)只获取可见行的视图,但是一旦视图变为可见,它将返回null。告诉应用程序列表视图项目现在可见,我需要做什么?我也对您在实施中看到的任何其他警告感兴趣。

0 个答案:

没有答案