2010-08-31 65 views
1

有人可以回答这个问题吗?我想从我的Outer类方法访问内部类变量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是内部类变量,它是不能从外部类访问 普莱斯告诉我,我怎么能写该行

回答

1

你需要内在的实例来访问mUpdateTask变量。

喜欢的东西:

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

抱歉,这个概念是不能访问它在Android中使用线程 – Abhi 2010-08-31 10:26:41

0

只是使mUpdateTask静......并与内部类的名字。通讯Inner.mUpdateTask

也可以用干将,这将能够retrun的mUpdatetask 。

如果你正在创建这个Innerclass的对象,我真的没有看到这个问题的任何一点..你总是可以用上面描述的Vivien的方式调用。

0

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

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

OR

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

Inner.mUpdateTask