1

我正在开发一个 Android 应用程序并在 Application Class 中维护全局变量MyAppData。现在为了使用这些全局变量,我MyAppData在我的 Activity 中创建对象,如下所示:

MyAppData mad;
mad = (MyAppData)getApplication();

由于我的活动有一个自定义列表视图,我正在使用 BaseAdapter 来填充 LstView。现在我需要在我的 BaseAdapter 类中使用全局变量。以下代码不允许我创建MyAppData类对象:

public class AlbumList_Adapter extends BaseAdapter{
Context context;
MyAppData mad;

      public AlbumList_Adapter(Context context){
      this.context = context
      mad = (MyAppData)getApplication();
      }
}

即使我尝试过mad = (MyAppData)context;,但没有运气。我不知道我错在哪里了。

4

1 回答 1

9

你可以有:

class MyApplication extends Application {

 private static MyApplication mInstance;

@Override
public void onCreate() {
  super.onCreate();
  mInstance = this;
}

public static MyApplication getInstance() { return mInstance; }

}

然后您可以MyApplication.getInstance()在整个代码中使用。

于 2012-07-04T11:35:56.313 回答