非Activity类里面调用Activity里面的方法 AndroidJava对象类Activity 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在A里面这样写,public A instance=A.this,其它类里面就可以写,A.instance.方法名 最好不要令 Activity本身为 static, 这样的话,系统进行资源回收的时候,判断 该 Activity为 static, 就不会对他进行资源回收你可以在非 Activity 类中,写这么一个方法.public void setActivityCallback(Activity activity){ this.aActiity = activity;}或者给非 Activity 添加一个包含 Activity 的构造方法如:public Bclass(Activity activity){ this.aActivity = activity;}但是请注意不要在非 Activity 类中,将 Activity 定义为 static 变量 初始化Bclass 的时候把AActivity 传进去就行了 不行啊,会报non-static cannot referenced from a static 不行啊,会报non-static cannot referenced from a static我少写了一个static,应该是在public static InfoActivity instance = null;然后在oncreate里面写instance =this,在其它activity里面就可以用InfoActivity.instance.方法名 这样做会造成有两个AActivity的吧?在实例化B前,我已经启动了AActivity public class AActivity extends Activity ·{ //声明一个Bclass对象 public Bclass bClass; public void onCreate(..) { bClass = new Bclass(this); } public int methoda() { //do something }}public class Bclass { public AActivity aActivity = null; public Bclass(AActivity activity){ aActivity = activity; } //我想在这里面这样用 aActivity.methoda();} 外部类通过用activity的handle发送消息到activity来执行方法比较安全。 这样做会造成有两个AActivity的吧?在实例化B前,我已经启动了AActivity不会啊,这只是引用而已,没什么大影响的 将AActivity类中的methoda方法定义为static方法,如果对你的AActivity这个类没有影响的话 不行啊,会报non-static cannot referenced from a static我少写了一个static,应该是在public static InfoActivity instance = null;然后在oncreate里面写instance =this,在其它activity里面就可以用InfoActivity.instance.方法名不好意思,忙别的事情去了,刚刚我尝试了你这个方法,无论怎么设置线程时间,B里面使用A.instance都会报nullpointerexception,很郁闷~~ 你的A生成了没有啊,生成了有没有指定instance,你看下B里面的A.instance是什么 public class AActivity extends Activity ·{ //声明一个Bclass对象 public Static AActivity instance; public void onCreate(..) { instance= this } public int methoda() { //do something }} public class Bclass { //我想在这里面这样用 AActivity .instance.methoda();} A生成了,并且在A里面Log是有句柄的,但是在B里面是null。 1.将Activity对象传入.2.定义static方法,直接Activity.xx()调用. 传过去activity还是比较长用的 安卓数据库操作,出了点小问题,在比较从数据库中读到的数据与输入的数据的时候出了问题,好心人帮忙改一下吧? 为什么Android手机异地GPRS无法使用?该如何调试? 拍照程序 adb中访问sqllite的问题 [Android]:求Android关于Surface细节实现的书籍 WIFI扫描获取相关信息,请教大神!!!!!!!!!!!! Android程序不能运行 累计计时的实现 android系统音乐播放器显示乱码 [求助] Android可以录制正在播放的MP3吗? slidingmenu 框架中 fragment不能显示数据 大陆安卓手机操作系统的默认字符集是什么?
this.aActiity = activity;
}或者给非 Activity 添加一个包含 Activity 的构造方法
如:
public Bclass(Activity activity){
this.aActivity = activity;
}但是请注意不要在非 Activity 类中,将 Activity 定义为 static 变量
这样做会造成有两个AActivity的吧?在实例化B前,我已经启动了AActivity
//声明一个Bclass对象
public Bclass bClass;
public void onCreate(..) {
bClass = new Bclass(this);
}
public int methoda() {
//do something
}
}public class Bclass {
public AActivity aActivity = null;
public Bclass(AActivity activity){
aActivity = activity;
}
//我想在这里面这样用
aActivity.methoda();
}
这样做会造成有两个AActivity的吧?在实例化B前,我已经启动了AActivity不会啊,这只是引用而已,没什么大影响的
不好意思,忙别的事情去了,刚刚我尝试了你这个方法,无论怎么设置线程时间,B里面使用A.instance都会报nullpointerexception,很郁闷~~
//声明一个Bclass对象
public Static AActivity instance;
public void onCreate(..) {
instance= this
}
public int methoda() {
//do something
}
}
public class Bclass {
//我想在这里面这样用
AActivity .instance.methoda();
}
A生成了,并且在A里面Log是有句柄的,但是在B里面是null。
2.定义static方法,直接Activity.xx()调用.