-1

I am developing app using RecycleView. I got an error message

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.app.appname/com.app.appname.SpeedDialViewActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v7.widget.RecyclerView.setLayoutManager(android.support.v7.widget.RecyclerView$LayoutManager)' on a null object reference

My code is shown below.

SpeedDialViewActivity.java

public class SpeedDialViewActivity extends AppCompatActivity {

private List<Bean> beanList = new ArrayList<>();
private RecyclerView recyclerView;
private ViewAdapter mAdapter;
Context context;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_speed_dial_view);
    mAdapter = new ViewAdapter(beanList);
    RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getApplicationContext());
    recyclerView.setLayoutManager(mLayoutManager);
    recyclerView.setItemAnimator(new DefaultItemAnimator());
    recyclerView.setAdapter(mAdapter);
    prepareData();
}

private void prepareData() {

    DatabaseHandler handler = new DatabaseHandler(getApplicationContext());
    Log.d("Reading: ", "Reading all contacts..");
    List<Bean> contacts = handler.getAllContacts();
    for (Bean cn : contacts) {
        String log = "Id: " + cn.getId() + " ,Name: " + cn.getName() + " ,Phone: " + cn.getNumber();
        // Writing Contacts to log
        //Log.d("Name: ", log);

        cn = new Bean(cn.getName(), cn.getNumber(), cn.getSpeeddial());
        beanList.add(cn);

    }

}
}

The error is occurring in

    RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getApplicationContext());
    recyclerView.setLayoutManager(mLayoutManager);

I don't know how to solve the error.

halfer
  • 19,824
  • 17
  • 99
  • 186
fazil tm
  • 299
  • 1
  • 5
  • 23

2 Answers2

1

You just missed the findViewById of your recyclerView

recyclerView = (RecyclerView) findViewById(R.id.your_recyclerview_id);
Vijay Makwana
  • 506
  • 5
  • 14
-1

I have missed recyclerView = (RecyclerView) findViewById(R.id.your_recyclerview_id);

fazil tm
  • 299
  • 1
  • 5
  • 23