2016-08-01 2 views
0

クラスを作成する場合は、自分のグローバルクラスのメソッドにアクセスしたい、同じクラスのメソッドと同じ静的メソッドで1つの静的メソッドを作成しました -グローバルにアクセスする静的メソッドでグローバルクラスのメソッド

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でメソッドを作成することです。変数は静的であるため、1つのコピーのみが維持され、静的メソッドはこれらの変数にアクセスできます。

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

ありがとう、それは私のために働いています。 –

関連する問題