我正在根据使用 Base Adapter 接收到的一些数据设置列表视图。
当我去列表视图时,在'int android.view.View.getImportantForAccessibility()'中获取空对象引用错误
我尝试了以下解决方案:
java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“int android.view.View.getImportantForAccessibility()”
Finder 功能不起作用,Base Adapter 调用 NullPointer
即使我无法理解为什么会出现上述错误。如果有人愿意帮助我,那将更有帮助。提前致谢..
这是我的代码:
public class ListViewAdapter extends BaseAdapter
{
ArrayList<HashMap<String, String>> listAdapter;
LayoutInflater inflater;
Context getActivityContext;
public ListViewAdapter(Activity rAct, ArrayList<HashMap<String, String>> receivedListAdapter, Context inGetActivityContext)
{
listAdapter = receivedListAdapter;
getActivityContext = inGetActivityContext;
if(getActivityContext != null)
{
this.inflater = (LayoutInflater)
getActivityContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
}
@Override
public int getViewTypeCount()
{
return getCount();
}
@Override
public int getItemViewType(int position)
{
return position;
}
@Override
public int getCount()
{
return listAdapter .size();
}
@Override
public Object getItem(int arg0)
{
return listAdapter .get(arg0);
}
@Override
public long getItemId(int position)
{
return position;
}
public class ViewHolder
{
TextView tv1, tv2, tv3, tv4, tv5;
LinearLayout ll1, ll2;
ImageView img1, img2, img3, img4, img5;
FrameLayout fl;
LinearLayout llrootLayout;
}
@Override
public View getView(final int position, View cv, ViewGroup parent)
{
final ViewHolder holder;
if(cv== null)
{
holder = new ViewHolder();
if(inflater != null)
{
cv= inflater.inflate(R.layout.rowview_commonlist_ll, parent, false);
holder.img1 = (ImageView) cv.findViewById(R.id.images);
holder.tv1 = (TextView) cv.findViewById(R.id.tvDate);
holder.ll1 = (LinearLayout) cv.findViewById(R.id.llDummy1);
holder.ll2 = (LinearLayout) cv.findViewById(R.id.llDummy2);
holder.img2 = (FrameLayout) cv.findViewById(R.id.imgP);
holder.img3 = (ImageView) cv.findViewById(R.id.images1);
holder.img4 = (ImageView) cv.findViewById(R.id.new1);
holder.img5 = (ImageView) cv.findViewById(R.id.imgvAR);
holder.tv2 = (TextView) cv.findViewById(R.id.text1);
holder.tv3 = (TextView) cv.findViewById(R.id.text2);
holder.tv4 = (TextView) cv.findViewById(R.id.text3);
holder.llrootLayout = (LinearLayout) cv.findViewById(R.id.rootTxt);
}
if(cv!= null && holder != null)
{
cv.setTag(holder);
}
}
else
{
holder = (ViewHolder) cv.getTag();
}
//here some code for assigning UI based on listAdapter data
if(listAdapter != null)
{
.
.
.
}
//here some code for click operation of list view item
.
.
.
.
.
return cv;
}
}