2

共有設定で問題が発生しています。思った通りに動作していません。アプリケーションにログインすると、共有設定にID(google id)を保存します。後続のアクティビティ(約3アクティビティ後)でIDを取得しようとしましたが、nullです。重要な場合は、onClickListenerで(ボタンから)共有設定を取得しようとしています。何が間違っているのかわかりません。どんな助けでもいただければ幸いです。

設定方法:

    public void setLoginPreferences(String id){

    SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit();
    editor.putString(Constants.ID_KEY_NAME, id);
    editor.commit();
}

私がそれを取得しようとしている方法:

    //setup clickListener for Sumbit Comment
    Button submitButton = (Button) findViewById(R.id.submitComment);
    submitButton.setOnClickListener(new OnClickListener(){

        @Override
        public void onClick(View v) {
           //myContext is a global variable set on the onCreate of the activity
            SharedPreferences prefs = myContext.getPreferences(MODE_PRIVATE);
            String userId = prefs.getString(Constants.ID_KEY_NAME, null);   
            SetConcertCommentAsynchWebservice scca = new SetConcertCommentAsynchWebservice(myContext,concertId,userId,Float.toString(soundRatingBar.getRating()),Float.toString(showRatingBar.getRating()),userSubmittedComments.getText().toString()); 
        }});
}
4

1 に答える 1

3

他の場所でアクセスしたい場合は、context.getSharedPreferences()の代わりに使用することをお勧めします。context.getPreferences()

于 2012-11-24T02:51:06.277 に答える