Logcat
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.ctrlsan.kedaisalaiku.Activity.MainActivity.onNavigationItemSelected(MainActivity.java:93)
MainActivity.java
public class MainActivity extends AppCompatActivity implements NavigationView.OnNavigationItemSelectedListener{
private AppBarConfiguration mAppBarConfiguration;
private RecyclerView rv_noMeja;
private RecyclerView.Adapter adNoMeja;
private RecyclerView.LayoutManager lmNoMeja;
private List<DataModel> listDataNoMeja = new ArrayList();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
FloatingActionButton fab = findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
DrawerLayout drawer = findViewById(R.id.drawer_layout);
NavigationView navigationView = findViewById(R.id.nav_view);
mAppBarConfiguration = new AppBarConfiguration.Builder(
R.id.nav_addOrder, R.id.nav_listOrder, R.id.nav_slideshow)
.setDrawerLayout(drawer)
.build();
NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment);
NavigationUI.setupActionBarWithNavController(this, navController, mAppBarConfiguration);
NavigationUI.setupWithNavController(navigationView, navController);
navigationView.setNavigationItemSelectedListener(this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onSupportNavigateUp() {
NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment);
return NavigationUI.navigateUp(navController, mAppBarConfiguration)
|| super.onSupportNavigateUp();
}
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
int id = item.getItemId();
if (id == R.id.nav_addOrder) {
rv_noMeja = findViewById(R.id.rv_dataNoMeja);
lmNoMeja = new LinearLayoutManager(MainActivity.this, LinearLayoutManager.VERTICAL, false);
rv_noMeja.setLayoutManager(lmNoMeja); //This is line 93 which is the error
viewMeja();
}
if (id == R.id.nav_listOrder) {
Toast.makeText(getApplicationContext(),"SILAHKAN ORDER", Toast.LENGTH_LONG).show();
}
DrawerLayout drawer = findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
private void viewMeja(){
APIRequestData ardData = RetroServer.requestClien().create(APIRequestData.class);
Call<ResponModel> viewMeja = ardData.konfigShow();
viewMeja.enqueue(new Callback<ResponModel>() {
@Override
public void onResponse(Call<ResponModel> call, Response<ResponModel> response) {
listDataNoMeja = response.body().getData();
adNoMeja = new AdapterNoMeja(getApplicationContext(), listDataNoMeja);
rv_noMeja.setAdapter(adNoMeja);
adNoMeja.notifyDataSetChanged();
}
@Override
public void onFailure(Call<ResponModel> call, Throwable t) {
Toast.makeText(MainActivity.this, "Failed to connect server : "+t.getMessage(), Toast.LENGTH_SHORT).show();
}
});
}
}