在单击任何列表视图项目时,我在获取单击项目视图之外的其他视图时遇到了麻烦。我需要从每个列表项视图中隐藏一个视图,而不是单击的项目视图。
下面的代码适用于较少的项目 4 或 5,一次可见,但如果我有多个项目,它们占用的空间超过屏幕,则会产生问题(强制关闭时崩溃 - 面板 1 初始化时出现 NullPointerException)尺寸。
for(int count = 0; count<listAdapter.getCount(); count++)
{
if(arg2!=count)
{
int visiblePosition = jobList.getFirstVisiblePosition();
View v = jobList.getChildAt(count - visiblePosition);
panel1 = (LinearLayout)v.findViewById(R.id.panel1);
panel1.setVisibility(View.GONE);
}
}
我只是在上面的代码中替换了视图的初始化
从
View v = jobList.getChildAt(count - visiblePosition);
至
View v = jobList.getChildAt(count);
但是,问题仍然存在,即我在视图上收到 NPE,以防万一,我确实有比当前可见的项目更多的项目。我想这是因为我的 for 循环 计数 < listAdapter.getCount()中的错误条件,我想这必须更改为其他内容,才能摆脱这个麻烦。
请建议,for循环(初始化/条件)应该改变什么?