简体   繁体   English

我在GridView Android中收到Null Pointer Exception

[英]I am getting Null Pointer Exception in GridView Android

I am getting null pointer exception in fragment using Gridview . 我正在使用Gridview在片段中得到空指针异常。 My code is 我的代码是

public class HomeFragment extends Fragment {
    GridView grid;
    String[] web = { "Bata", "Service", "puma", "Hush" };
    int[] imageId = { R.drawable.shoesmall, R.drawable.shoe1, R.drawable.shoe3,
            R.drawable.shoe4 };

    public HomeFragment(){}

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {

       View rootView = inflater.inflate(R.layout.fragment_home, container, false);
     //   ViewGroup root = (ViewGroup) inflater.inflate(R.layout.fragment_home, container);

        CustomGrid adapter = new CustomGrid(getActivity().getApplicationContext(), web, imageId);
        grid = (GridView) getView().findViewById(R.id.gridview);
        grid.setAdapter(adapter);
        grid.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view,
                    int position, long id) {
                Toast.makeText(getActivity().getApplicationContext(),
                        "You Clicked at " + web[+position], Toast.LENGTH_SHORT)
                        .show();
            }
        });

        return rootView;
    }
}

Can anyone guide why it is happing? 谁能指导它为什么要包装? I don't use fragments commonly. 我通常不使用片段。

your getView() is null,because view not yet created,So change 您的getView()为null,因为尚未创建视图,因此请更改

 grid = (GridView) getView().findViewById(R.id.gridview);

to

 grid = (GridView) rootView.findViewById(R.id.gridview);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM