Listview getChildAt有时使用getFirstVisiblePosition和getLastVisiblePosition崩溃

时间:2017-08-17 01:30:01

标签: java android listview

我正在尝试更改listview中所选行的样式,如果我单击listview中的另一行我想将正常样式返回到除新选择的行之外的所有其他行,我知道我可以使用onItemSelected侦听器但是它没有与我合作所以当我点击行内的textview时我改变了风格。 getChildAt中的问题在某些行中返回null,因此当点击某些行时应用程序崩溃,我不知道如何解决这个问题我使用了所有关于这个问题的建议解决方案但是没有给我任何想要的结果

for (int p = 0; p < listW.getLastVisiblePosition()-listW.getFirstVisiblePosition(); p++) {

                        if(p == position)
                        {
                           listW.getChildAt(position).setBackgroundResource(R.drawable.focus_listview_row_bg);

                        }
                        else{
                            listW.getChildAt(p-listWO.getFirstVisiblePosition()).setBackgroundResource(R.drawable.non_focus_listview_row_bg);
                        }


}

0 个答案:

没有答案