我想从Android Activity中的Outer类方法访问内部类变量

时间:2010-08-31 10:00:30

标签: java android

有人能够聪明地回答这个问题吗?

我正在使用以下代码执行某项任务, 我想从外部类方法访问内部类变量。

class Outer extends Activity
{

 private Handler mHandler = new Handler();

  StopTheThread()
  {
     mHandler.removeCallbacks(mUpdateTimeTask);// this is the wat i want to do
  }

  class Inner 
  {
     final Runnable mUpdateTask = new = new Runnable() {
           public void run() {

           //Some Code Goes Here

       }
     };

     InnerClassMethod()
     {

       mHandler.removeCallbacks(mUpdateTimeTask);// This statement working fine here
      } 

  }

}

这里mUpdateTask是内部类变量,无法从外部类访问 请告诉我如何写这行

3 个答案:

答案 0 :(得分:1)

您需要一个Inner实例来访问mUpdateTask变量。

类似的东西:

Inner inner = new Inner();
inner.mUpdateTask
// ...

答案 1 :(得分:0)

只需将mUpdateTask设为静态...并使用内部类名调用.. Inner.mUpdateTask

你也可以使用能够重新启动mUpdatetask的getter。

如果你正在创建这个Innerclass的对象我真的没有看到这个问题的任何一点......你总是可以按照Vivien所描述的方式打电话。

答案 2 :(得分:0)

创建一个Inner类对象,然后访问它

Inner inner = new Inner();
inner.mUpdateTask
// use this 

OR

您可以创建一个静态mUpdateTask对象,并可以使用类名

访问它
Inner.mUpdateTask