-4
这是我的代码时,我实现获得项目计数1这表明非静态方法不能引用当我实现计数2显示它在return语句helpme空指针异常修复此的Android空指针异常
final int speedScroll = 1000;
final Handler handler = new Handler();
final Runnable runnable = new Runnable() {
int count = 0;
@Override
public void run() {
if(count == Adapter4.getItemCount2())
count =0;
if(count < Adapter4.getItemCount2()){
recyclerView4.smoothScrollToPosition(++count);
handler.postDelayed(this,speedScroll);
}
}
};
handler.postDelayed(runnable,speedScroll);
}
@Override
public int getItemCount() {
return albumList.size();
}
public static int getItemCount2() {
List<Album4> albumList=null;
return albumList.size();
}
你快把它'null',你怎么能得到空变量的'size' ..尝试用)像'名单 albumList =新的ArrayList <>('这将返回'0'; –
我假设变量'albumList'是全局变量,所以尝试删除或至少重命名您的'getItemCount2'方法中具有相同名称的变量 – Barak
有两件事可能会导致您的错误的问题 1st是: @Override public int getItemCount(){ return albumList.size(); } 可能是albumList尚未初始化,这导致空例外。 2nd is: public static int getItemCount2(){ List albumList = null; return albumList.size(); } 你用null初始化列表,然后返回将导致null异常的大小。 –