setAdapter的时候,总是报错 空指针异常

来源:互联网 发布:做窗帘加工费怎么算法 编辑:程序博客网 时间:2024/05/17 14:25

listview 绑定适配器setAdapter的时候,总是报错  空指针异常



public class Jiushui_4ji_Fragment extends Fragment implements OnClickListener {

 private Activity ctx;
 private View layout;
 private ListView lv_chaoshi;

 // 存放消息的集合
 private List<Chaoshi_4ji_Beans> mChaoshi_4ji_BeansList = new ArrayList<Chaoshi_4ji_Beans>();

 @Override
 public void onClick(View v) {
  // TODO Auto-generated method stub

 }

 @Override
 public View onCreateView(LayoutInflater inflater, ViewGroup container,
   Bundle savedInstanceState) {
  if (layout == null) {
   ctx = this.getActivity();
   layout = ctx.getLayoutInflater().inflate(
     R.layout.fragment_business_jiushui_4ji, null);
   initViews();
   initData();
   // setOnListener();
  } else {
   ViewGroup parent = (ViewGroup) layout.getParent();
   if (parent != null) {
    parent.removeView(layout);
   }
  }
  return layout;
 }

 private void initData() {
  // TODO Auto-generated method stub

  Chaoshi_4ji_Beans chaoshiInfo = new Chaoshi_4ji_Beans();
  chaoshiInfo.setmChaoshiImageId(R.drawable.img_chaoshi1);
  chaoshiInfo.setmChaoshiName("家得利超市");
  chaoshiInfo.setmChaoshiQisongjia("¥30");
  chaoshiInfo.setmChaoshiXingji("4.5");
  chaoshiInfo.setmChashiChanpinMingcheng("瓶装青岛啤酒640ml");
  chaoshiInfo.setmChashiShoujia("¥4.5");

  
  
  Chaoshi_4ji_Beans chaoshiInfo1 = new Chaoshi_4ji_Beans();
  chaoshiInfo1.setmChaoshiImageId(R.drawable.img_chaoshi3);
  chaoshiInfo1.setmChaoshiName("家得利超市");
  chaoshiInfo1.setmChaoshiQisongjia("¥30");
  chaoshiInfo1.setmChaoshiXingji("4.5");
  chaoshiInfo1.setmChashiChanpinMingcheng("瓶装青岛啤酒640ml");
  chaoshiInfo1.setmChashiShoujia("¥4.5");

  mChaoshi_4ji_BeansList.add(chaoshiInfo);
  mChaoshi_4ji_BeansList.add(chaoshiInfo1);

  ChaoshiAdapter chashiAdapter = new ChaoshiAdapter(ctx,
    R.layout.siji_chaoshilistview_item, mChaoshi_4ji_BeansList);
  lv_chaoshi.setAdapter(chashiAdapter);

 }

 private void initViews() {
  // TODO Auto-generated method stub
  lv_chaoshi = (ListView) layout.findViewById(R.id.lv_chaoshi);
 }



解答:

方法1   :onCreate 那里,在获取ListView 之前,你得加载这个界面的布局!!


方法2 :如果Activity中有fragment
那么  在fragment中绑定数据  而不是 Activity!!!
0 0
原创粉丝点击