4

有人知道如何在 monodroid 中获取应用程序上下文(我正在寻找 getApplicationContext() 的 monodroid 实现)吗?我试过 Application.ApplicationContext 但它不起作用。我写了一个继承 Application 的类,我想将 ApplicationContext 显式转换为这种类型。在这一点上,mono 死了,输出中显示了一条非常无用的消息:

10-12 11:58:31.045 I/mono    ( 1919): Stacktrace:
10-12 11:58:31.045 I/mono    ( 1919):

编辑:我想从活动中访问它

4

2 回答 2

5

在 Android 的 Mono 中,像 getApplicationContext() 这样的 Java getter/setter 方法被转换为属性:ApplicationContext

你没有在问题中提到你试图从哪里调用它。它来自活动内部吗?如果是这样,请尝试将 Application 属性转换为您的自定义应用程序类。就像是:

((CustomApplication) Application).DoSomething();

编辑

您还应该确保您的自定义应用程序类使用ApplicationAttribute装饰:

[Application(Theme = "@style/ApplicationTheme", Label = "@string/ApplicationName", Icon = "@drawable/icon")]
public class CustomApplication : Application
于 2011-10-12T12:43:16.317 回答
0

(免责声明:我是一个 monodroid 新手)

根据我能找到的,没有静态上下文。相反,上下文是您当前活动的属性。

因此,在您当前的活动中,访问 this.ApplicationContext。

您将需要通过应用程序堆栈传递上下文;我可以预料到这可能会变得很麻烦。

于 2014-10-08T02:09:36.787 回答