1、在另一个activity里,可以使用intent;
2、在一个普通的class里,怎么访问activity类里的非静态变量或方法。我是这样做的
例如:
newActivity= new BaseActivity();//BaseActivity继承自activity的类
scrennWidth=newActivity.getScreenWidth();
这样做出错了,怎么回事啊,有没有好的方法啊,我不想把getScreenWidth()设为静态方法
谢谢
2、在一个普通的class里,怎么访问activity类里的非静态变量或方法。我是这样做的
例如:
newActivity= new BaseActivity();//BaseActivity继承自activity的类
scrennWidth=newActivity.getScreenWidth();
这样做出错了,怎么回事啊,有没有好的方法啊,我不想把getScreenWidth()设为静态方法
谢谢
解决方案 »
- Android编程能不能利用手机信号得到基站和手机之间的距离
- 图片放大缩小时如何固定住中心点
- 程序在eclipse中运行正常却在真机不能正常运行是什么原因?注:eclipse中能够识别真机
- android button按下同时改变背景和文字颜色
- 关于BroadcastReceiver启动Service的问题。
- 【求助】android ril层移植到通用linux平台
- listView中的Button状态保存。。
- 关于ListView异步加载数据(不是图片)
- android sdk
- Android ImageView 控件方法使用出错
- android4.0 桌面预设
- 下载文件时,报socketTimeoutException问题,请高手分析
public class ab
{
String str;
ab(String str)
{
this.str=str;
}
activity中通过构造ab类对象传递数据过去
ab c=new ab(string数据);
也可以通过构造函数将上下文传递过去!即 ab c=new ab(xxxActivity.this)
在ab类中,
通过这个上下文调用acitivity里面的方法
@Override
public void onCreate(Bundle savedInstanceState) {
a = new A(this);
} public void method(){
System.out.println("可以调用我");
}
}
public class A{
private TestActivity mActivity; public A(TestActivity context){
mActivity = context;
xx();
}
private void xx(){
mActivity.method();
}
}
或者写到一个Application子类里面
mSon.getter();
这样的话传啥对象都ok。
startActivit方法交系统去创建了一个Activity,而不是原来我们新建一个Activity的方式去创建一个Activity了,因此我们没有办法直接获取一个Activity的引用了。
private static MainActivity defaultActivity = null;
public static MainActivity getDefault() {
return defaultActivity;
}
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
defaultActivity = this;
}
@Override
protected void onDestroy() {
defaultActivity = null;
}