Ankit Tale
Ankit Tale

Reputation: 2004

Handling counter in textview

How to handle + and - on textview I tried this way but minus is not working.Whenever I get incremented quantity minus button didnt work on it

  public class HomeFragment extends Fragment {

    Button btnShirtPlus,btnShirtMinus;
    TextView text_quantity;
    Integer incrementValue;
    String counterDec;

    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {

        View rootView = inflater.inflate(R.layout.fragment_home,container,false);
        return rootView;
    }

    @Override
    public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);

        btnShirtMinus = (Button)view.findViewById(R.id.btnMinusShirt);
        btnShirtPlus = (Button)view.findViewById(R.id.btnPlusShirt);
        text_quantity = (TextView)view.findViewById(R.id.txtCounterShirt);

        btnShirtMinus.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                counterDec = text_quantity.getText().toString();
                incrementValue = Integer.parseInt(counterDec);
                //counter -- ;
                text_quantity.setText(String.valueOf(incrementValue));
                Toast.makeText(getContext(), "Minus hit", Toast.LENGTH_SHORT).show();
            }
        });

        btnShirtPlus.setOnClickListener(new View.OnClickListener() {
            int counter = 0;
            @Override
            public void onClick(View v) {
               // counter ++;
                text_quantity.setText(String.valueOf(counter++));
                Toast.makeText(getContext(), "Plus hit" + counter, Toast.LENGTH_SHORT).show();
            }
        });
    }
}

The Following image show what happen after plus is clicked

Upvotes: 1

Views: 88

Answers (1)

Pankaj
Pankaj

Reputation: 8058

You can do it like this:

For Add Button -

btnShirtPlus.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {

                int value = Integer.parseInt(text_quantity.getText()
                        .toString().trim());
                value++;
                if (value >= 1) {
                    btnShirtMinus.setEnabled(true);
                }
                text_quantity.setText(String.valueOf(value));
            }
        });

For Remove Button -

btnShirtMinus.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                int value = Integer.parseInt(text_quantity.getText()
                        .toString().trim());
                --value;
                if (value == 0) {
                    btnShirtMinus.setEnabled(false);
                }
                text_quantity.setText(String.valueOf(value));
            }
        });

Upvotes: 1

Related Questions