android - 在 TextView 中处理计数器

标签 android

如何在 textview 上处理 + 和 - 我试过这种方式,但减号不起作用。每当我得到增加的数量时减号按钮都不起作用

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

下图显示了单击加号后发生的情况

最佳答案

你可以这样做:

对于添加按钮 -

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

对于删除按钮 -

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

关于android - 在 TextView 中处理计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37024617/

相关文章:

java - For循环变量问题

android - 立体声录音在左右声道中提供相同的数据

android - 在 Webview 中加载 pdf 的内容

android - 如何完全过滤频率范围android

android - 如何在项目单击事件的 ListView 附近显示弹出菜单?

android - 如何通过 Gradle 使 Android Studio 中的两个不同模块使用同一库的不同版本

java - Assets 文件夹在哪里?

android - 为什么刷新后 ListView 行是白色的?

android - 仅为新用户发布更新 Android Play 商店

android - 该接口(interface)不适用于 fragment