其它类(非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的内部类就没这样的问题,想不明白!!!
这个其它类不是从Activity继承而来,所以想通过MainActivity类(继承自Activity类,所以有一些方法可以直接使用,因为它遵守ANDROID下的一些框架)的方法来做一些事情。像发广播消息什么的。
MainActivity类在开始就被ONCREATE( )了,所以应该已经实例化了,但在其它类中怎么引用?怎么去getInstance把MainActivity的实例得到???!!!
在其它类直接MainActivity.this.xxx( )这样引用不行,报下面的错误:No enclosing instance of the type MainActivity is accessible in scope.
其它类直接写成MainActivity的内部类就没这样的问题,想不明白!!!
解决方案 »
- android如何在一个activity中finish掉另外一个activity
- 求ireader或者手机阅读器的源码(能支持多种格式)
- View.GONE not work ,help!
- 急求解android2.3上显示维语问题和出错,附维语显示思路代码
- 请问网易新闻客户端用于展示新闻的界面是怎么做的
- android 图片立体翻转效果
- 请问如何把ImageView里的图片转换为base64
- 怎么等待一个线程结束?希望等待的过程中界面不能卡死..
- 关于setImageResource更换图片的问题
- webview选择图片问题
- 看一下这段代码,我想用拖动这个圆,可以移动的位置一直不对,求解
- 请教:清空gridview中已有数据
觉得还有一种方法就是通过消息机制来完成。其它类发一个消息给 MainActivity ,让它去处理!!!
--------------
在其它类直接MainActivity.this.xxx( )这样引用不行,报下面的错误:
No enclosing instance of the type MainActivity is accessible in scope.
其它类直接写成MainActivity的内部类就没这样的问题,想不明白!!!
--------------一个普通内部类(非static的)拥有它的外围类的所有成员的访问权限,也可以引用外围类的对象:外围类的名称.this
{
……
public void anotherClass()
{
AnotherClass activity = new AnotherClass(this);
}
}public class AnotherClass
{
private MainActivity activity;
public AnotherClass(MainActivity activity)
{
this.activity = activity;
}
}
传接口:public interface IActivity
{
// 与Activity里同名同参数的方法声明
}public class MainActivity extends Activity implements IActivity
{
……
public void anotherClass()
{
AnotherClass activity = new AnotherClass(this);
}
}public class AnotherClass
{
private IActivity iActivity;
public AnotherClass(IActivity iActivity)
{
this.iActivity = iActivity;
}
}