0

Alright I'm trying to display data called by an api on a recyclerview and I get the error. It has nothing to do with butterknife I think. Please help.

Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void androidx.recyclerview.widget.RecyclerView.setLayoutManager(androidx.recyclerview.widget.RecyclerView$LayoutManager)' on a null object reference at com.example.myflickrproject.PhotoDisplayView.onCreate(PhotoDisplayView.java:40)

public class PhotoDisplayView extends AppCompatActivity { //implements AdapterView.OnItemClickListener
    @BindView(R.id.recView)
    RecyclerView rViewDis;

    @BindView(R.id.addToDatabse)
    Button download;

    @BindView(R.id.backButton)
    Button goBack;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_photo_display_view);
        System.out.println("My photolist is " + DataCollection.photoList);
        rViewDis.setLayoutManager(new GridLayoutManager(this, 3));
        PhotoAdapter myAdapter = new PhotoAdapter(this, DataCollection.photoList);
        rViewDis.setAdapter(myAdapter);
        ButterKnife.bind(this);

    }



    @OnClick({R.id.addToDatabse, R.id.backButton})
    public void onClick(View v) {
        int btns = v.getId();
        switch (btns) {
            case R.id.addToDatabse:
                addToDatabse();
                break;
            case R.id.backButton:
                backToMenu();
                break;


        }
    }

    public void addToDatabse() {

    }

    public void backToMenu() {
        Intent intent = new Intent(this, MainActivity.class);
        startActivity(intent);
    }
}
santosh kumar
  • 2,952
  • 1
  • 15
  • 27
BechirM
  • 17
  • 5

1 Answers1

2

Bind your views after setContentView(R.layout.activity_photo_display_view); So, your code should be like this setContentView(R.layout.activity_photo_display_view); ButterKnife.bind(this);

Vijay
  • 575
  • 4
  • 14
ThavaSelvan
  • 123
  • 6