Search code examples
androidandroid-layoutandroid-fragmentsbutterknife

Null pointer exception is occuring while initializing the Textview using Butterknife


I have the following code:

public static class PlaceholderFragment extends Fragment {

    private static final String ARG_SECTION_NUMBER = "section_number";

    @InjectView(R.id.testTv)
    TextView textView;            

    public static PlaceholderFragment newInstance(int sectionNumber) {
        PlaceholderFragment fragment = new PlaceholderFragment();
        Bundle args = new Bundle();
        args.putInt(ARG_SECTION_NUMBER, sectionNumber);
        args.putString("product_url");
        fragment.setArguments(args);
        return fragment;
    }

    public PlaceholderFragment() {
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.fragment_userprofile_myaccount, container, false);

        ButterKnife.inject(getActivity(), rootView);

        textView.setText("Hello");

        return rootView;
    }

    @Override
    public void onDetach() {
        super.onDetach();
    }

}

Error is occuring on the line with textview.setText("Hello");.


Solution

  • You should read the document carefully :)

    not:

    ButterKnife.inject(getActivity(), rootView);
    

    change to:

    ButterKnife.inject(this, rootView);