Android передать номер через onclicklistener - PullRequest
0 голосов
/ 20 февраля 2012

Я пытаюсь попросить пользователя ввести 2 числа x и y.Когда пользователь нажимает кнопку, он вычтет y из x и выдаст итог.То, что я хотел бы сделать, это сохранить итоговое значение, и в следующий раз, когда вы нажмете кнопку, оно вычтет y из итогового значения.Я знаю, что не возвращаю итоги обратно, но я не уверен, с чего начать.

subtract.setOnClickListener(new View.OnClickListener() {


        public void onClick(View v) throws  NumberFormatException {
            if (v == subtract)
            {
            NumberFormat currencyFormatter;
            currencyFormatter = NumberFormat.getCurrencyInstance(currentLocale);



                String bString;
                String x = startingmoney.getText().toString();
                String y = submoney.getText().toString ();
                    double total = 0.00;
                    double xm = 0.00;
                    double ym =0.00;

                     try
                      {
                          xm = Double.parseDouble(x);
                      }
                     catch(NumberFormatException n)
                      {
                          xm = 0.00;
                      }
                     try
                     {
                         ym = Double.parseDouble(y);
                     }
                    catch(NumberFormatException n)
                     {
                        ym = 0.00;
                     }




           total = xm -ym;







                bString = currencyFormatter.format(total);
                endmoney.setText(bString);

                tracker.setText("you have entered " + bString +"\n" + tracker.getText().toString());

1 Ответ

1 голос
/ 20 февраля 2012

Есть много способов сделать это.Один из возможных способов - сделать переменные «x» и «y» статическими.Это может не соответствовать вашим требованиям, так как вы можете динамически изменять значения «x» и «y».

Другой способ - изменить реализацию OnClickListener.Вы можете использовать его как

class MyOnClickListener implements OnClickListener

и передать класс (класс, который вызывает setOnClickListener) в MyOnClickListener, то есть конструктор MyOnClickListener похож на

MyOnClickListener(CLASS clazz){
    this.clazz = clazz;
}

И вы можете делать вычитание с помощью clazz.getX () и clazz.getY ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...