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();
        }

Ответы (0 шт):