【发布时间】:2014-02-24 23:37:02
【问题描述】:
在 Xamarin 中,我想使用 Application 对象存储数据和全局变量。
我查看了此代码的资源: http://www.helloandroid.com/tutorials/maintaining-global-application-state
这是我的代码:
public class HelloApplication : Application
{
private int GlobalVariable = 1;
public int GetGlobalVariable()
{
return GlobalVariable;
}
public void SetGlobalVariable(int GlobalVariable)
{
this.GlobalVariable = GlobalVariable;
}
}
我正在尝试使用此代码引用该类:
((HelloApplication)GetApplication()).setGlobalVariable(10);
int variable=((HelloApplication)GetApplication()).getGlobalVariable();
当我构建应用程序时,上述两行代码都出现此错误:
当前上下文中不存在名称“GetApplication”
能否请我帮忙让这段代码正常工作?
编辑
这是我的代码:
HelloApplication state = ((HelloApplication) this.ApplicationContext);
state.SetGlobalVariable(10);
int globalVariable = state.GetGlobalVariable ();
Toast.MakeText (this, "Global variable " + globalVariable, ToastLength.Short).Show ();
这是我得到的错误:
未处理的异常:System.InvalidCastException:无法从源类型转换为目标类型。
我能帮我解决这个问题吗?
【问题讨论】:
-
你可以试试
HelloApplication state = ((HelloApplication) getApplicationContext()); state.setGlobalVariable(10); int variable= state.getGlobalVariable();看看是否可行。 -
try ((HelloApplication) this.getApplication()).setGlobalVariable(10);
-
你能看看我的编辑吗?
标签: android class xamarin global-variables