2016-08-01 166 views
0

我在我的类之一中创建了一个静态方法,并且在相同的静态方法中我想访问我的全局类的方法,如果我正在创建类 -在静态方法中访问全局类的全局方法

final GlobalClass globaVariable = (GlobalClass)getApplicationContext(); 

然后它显示我的错误,并建议我使这个对象是静态的,如果我使这个对象是静态的,那么我没有从我的全局类和方法获取值,因为它正在创建新副本。请建议我如何在静态方法中获取访问全局方法。

我的全局方法是波纹管:

public class GlobalClass extends Application { 

    private int vMyToken; 
    private String vConCmpName; 
    private boolean vUserLoginMode; 
    private String vGlobalSessionID; 
    private String vglobalAccInternalID; 


    public int getToken() { 

     return vMyToken; 
    } 

    public void setToken(int myTokenVal) { 

     //Toast.makeText(GlobalClass.this, "", Toast.LENGTH_SHORT).show(); 

     vMyToken = myTokenVal; 
    } 

} 
+0

添加到“Toast”类的问题代码请。 –

回答

1

一个解决办法是,以实例变量转换成GlobalClass静态,也使在GlobalClass静态方法。由于变量是静态的,所以只保留一个副本并且静态方法可以访问这些变量。

private static int vMyToken; 
private static String vConCmpName; 
private static boolean vUserLoginMode; 
private static String vGlobalSessionID; 
private static String vglobalAccInternalID; 
+0

非常感谢,它为我工作。 –