其它类(非MainActivity的内部类)怎么去调用MainActivity中定义的方法(非静态方法)?
其它类(非MainActivity的内部类)怎么去调用MainActivity中定义的方法(非静态方法)?
这个其它类不是从Activity继承而来,所以想通过MainActivity类(继承自Activity类,所以有一些方法可以直接使用,因为它遵守ANDROID下的一些框架)的方法来做一些事情。像发广播消息什么的。
MainActivity类在开始就被ONCREATE( )了,所以应该已经实例化了,但在其它类中怎么引用?怎么去getInstance把MainActivity的实例得到???!!!
在其它类直接MainActivity.this.xxx( )这样引用不行,报下面的错误:
No enclosing instance of the type MainActivity is accessible in scope.
其它类直接写成MainActivity的内部类就没这样的问题,想不明白!!!
[解决办法]
传对象:
public class MainActivity extends Activity{ …… public void anotherClass() { AnotherClass activity = new AnotherClass(this); }}public class AnotherClass{ private MainActivity activity; public AnotherClass(MainActivity activity) { this.activity = activity; }}