2016-09-15 7 views
-3

getActivity()を使用してコンテキストを初期化しようとしていますが、アンドロイドスタジオはシンボルを解決できませんでした。アクティビティクラス内でコンテキストを取得する方法

class FullscreenActivity extends AppCompatActivity { 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     setContentView(R.layout.activity_fullscreen); 
     saveScore(); 
    } 
    private void saveScore(){ 
     Context context = getActivity(); 
     SharedPreferences sharedPref = context.getSharedPreferences(
      getString(R.string.preference_file_key), Context.MODE_PRIVATE); 
    } 
} 
+0

'getActivity()'は、 'Fragment'に使用します。 – Piyush

答えて

9

getActivityを使用しないでください。

this

Context context = this; 

例えば

は(あなたがフラグメント内にあるかどうかgetActivity()が使用されている。アクティビティでは、このキーワードを使用して取得することができます。)

とアクティビティの内部方法により、あなたはする必要はありませんcontextgetSharedPreferences()メソッドは既にActivityに存在します。 contextの参照なしにgetSharedPreferences()メソッドを呼び出すだけです。

1
private void saveScore(){ 
Context context = FullscreenActivity.this; 
SharedPreferences sharedPref = context.getSharedPreferences(
     getString(R.string.preference_file_key), Context.MODE_PRIVATE); 
} 
関連する問題