0

カートアクティビティでは、ユーザーがアイテムの数量を編集できるようにしており、ユーザーが数量を変更すると合計金額も変更ますが、ここで小さな問題に直面しています。戻るボタンをクリックするとリセットされます量、なぜ?

以下のスクリーンショットをご覧ください。

![ここに画像の説明を入力][1]

たとえば、上の画面では、製品の野菜の数量を 1 から 15 に編集し、合計も変更されていますが、問題は [戻る] ボタンをクリックすると、15 ではなく数量 1 の値が再び取得されることです。私が以前に入力したもの

これを制御する方法を教えてください。

CartAdapter.java:

    if(cost.getText().length() > 0)
    {
        try
        {
           itemamount = Double.parseDouble(cost.getText().toString());
           Log.d("ProductInformationActivity", "ItemAmount :: " + itemamount);
        }
        catch(NumberFormatException e)
        {
            itemamount=0.00;
            Log.d("ProductInformationActivity", "NumberFormatException :: " + e);
        }
    }

    qty.addTextChangedListener(new TextWatcher() {

        public void onTextChanged(CharSequence s, int start, int before,
                int count) {

            if (!qty.getText().toString().equals("")
                    || !qty.getText().toString().equals("")) {

                // accept quantity by user
                itemquantity = Integer.parseInt(qty.getText()
                        .toString());

                total.setText(new DecimalFormat("##.#").format(itemamount*itemquantity));

            }

        }

        @Override
        public void afterTextChanged(Editable s) {

        }

        @Override
        public void beforeTextChanged(CharSequence s, int start, int count,
                int after) {

        }

        });

    return vi;      
}       
  }
4

3 に答える 3

-1

すでに値を保存していて、戻るボタンの動作を制御したいだけの場合は、カート アクティビティでこれを使用できます。

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)  {
    if (keyCode == KeyEvent.KEYCODE_BACK) {
        //Your code
        return true; // so the super method doesn't get called
    }
    return super.onKeyDown(keyCode, event);
}
于 2013-05-06T05:00:35.480 に答える