无法在onclick方法中访问变量

时间:2012-03-31 22:21:25

标签: android int onclicklistener

我正在设置一个onclick方法,我无法访问我在其父方法中设置的int,是否有不同的方法来使用Int?

这是代码:

Date past = new Date(cYear, cMonth, cDay); // current Date
    Date today = new Date(mYear, mMonth, mDay); // date Choosen by the user
    int days = Days.daysBetween(new DateTime(past), new DateTime(today)).getDays()+1;
    mDateDisplay.setText(""+days);
    // display the current date (this method is below)
   updateDisplay();

    mButton.setOnClickListener(
        new View.OnClickListener()
        {
            public void onClick(View view)
            {
               s = WorkoutChoice.this.weight.getText().toString();
               s2 = WorkoutChoice.this.height.getText().toString();
               int w = Integer.parseInt(s);
               double h = Double.parseDouble(s2);
               double BMI = (w/h)/h;
               t.setText(""+BMI);
               id = db.insertTitle("001", ""+days, ""+BMI)
            }
        });

1 个答案:

答案 0 :(得分:2)

为了从内部类引用变量,您需要创建变量final

final int days = Days.daysBetween(new DateTime(past), new DateTime(today)).getDays()+1;