java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setVisibility(int)' on a null object reference
at com.example.marly.DBqueries$6.onComplete(DBqueries.java:307) (this is DBqueries java file line 307)
if(cartList.size() != 0) {
badgeCount.setVisibility(View.VISIBLE);
}else {
badgeCount.setVisibility(View.INVISIBLE);
}
if(DBqueries.cartList.size() < 99) {
badgeCount.setText(String.valueOf(DBqueries.cartList.size()));
}else {
badgeCount.setText("99");
}
this is MainActivity
private TextView badgeCount;
@Override
public boolean onCreateOptionsMenu(Menu menu) {
if(currentFragment == HOME_FRAGMENT) {
// Inflate the menu; this adds items to the action bar if it is present.
getSupportActionBar().setDisplayShowTitleEnabled(false);
getMenuInflater().inflate(R.menu.main, menu);
MenuItem cartItem = menu.findItem(R.id.main_cart_icon);
cartItem.setActionView(R.layout.bagde_layout);
ImageView bagdeIcon = cartItem.getActionView().findViewById(R.id.badge_icon);
bagdeIcon.setImageResource(R.drawable.my_orders);
badgeCount = cartItem.getActionView().findViewById(R.id.badge_count);
if (currentUser != null) {
if (DBqueries.cartList.size() == 0) {
DBqueries.loadCartList(MainActivity.this, new Dialog(MainActivity.this), false, badgeCount);
} else {
badgeCount.setVisibility(View.VISIBLE);
if (DBqueries.cartList.size() < 99) {
badgeCount.setText(String.valueOf(DBqueries.cartList.size()));
} else {
badgeCount.setText("99");
}
}
}
this is ProductDetailsActivity onCreateOptionsMenu
public static MenuItem cartItem;
private TextView badgeCount;
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.search_and_cart_icon, menu);
cartItem = menu.findItem(R.id.main_cart_icon);
cartItem.setActionView(R.layout.bagde_layout);
ImageView bagdeIcon = cartItem.getActionView().findViewById(R.id.badge_icon);
bagdeIcon.setImageResource(R.drawable.my_orders);
badgeCount = cartItem.getActionView().findViewById(R.id.badge_count);
if (currentUser != null) {
if (DBqueries.cartList.size() == 0) {
DBqueries.loadCartList(ProductDetailsActivity.this, loadingDialog, false, badgeCount);
}else {
badgeCount.setVisibility(View.VISIBLE);
if(DBqueries.cartList.size() < 99) {
badgeCount.setText(String.valueOf(DBqueries.cartList.size()));
}else {
badgeCount.setText("99");
}
}
}
this is MyCartFragment
if(DBqueries.cartItemModelList.size() == 0){
DBqueries.cartList.clear();
DBqueries.loadCartList(getContext(), loadingDialog, true, new TextView(getContext()));
}else {
loadingDialog.dismiss();
}