はい。最初にプリファレンスを要求するときに、デフォルト値を指定できます。たとえば、タイプ Int のプリファレンスをロードしている場合、アクティビティから次の方法でロードできます。
SharedPreferences defaultSettings = PreferenceManager.getDefaultSharedPreferences(this);
int preferenceValue = defaultSettings.getInt("PreferenceName", 7);
これにより、preferenceValue が 7 に読み込まれます (この設定はまだ初期化されていません)。これは、XML 設定ファイルにキー "PreferenceName" の設定があることを前提としています。Preference アクティビティが実行される前に、アクティビティでこの設定を編集する予定がある場合は、必ず SharedPreferenceEditor を使用して変更をコミットしてください。
// ... change to preferenceValue occurs prior to this code
SharedPreferences.Editor defaultEditor = defaultSettings.edit();
defaultEditor.putInt("PreferenceName", preferenceValue);
defaultEditor.commit();
ただし、ハードコードされた問題で「PreferenceName」を避け、strings.xml ファイルで文字列として使用することをお勧めします。このようにして、設定がまだ保存されていない場合の初期コードと設定 XML ファイルの両方から取得できます。これは、上記のコードが文字列 "PreferenceName" を次のようなものに置き換えることを意味します。
getResources().getString(R.string.pref_name)
また、設定 XML ファイルでは、次の方法でキーを参照できます。
android:key="@string/pref_name"
android:defaultValue="7"
これには、設定の「事前読み込み」と、ほとんどのアプリケーション設定を 1 か所に保持することが含まれます。最初のアクティビティが発生する前に XML 設定が作成/ロードされたかどうかという点で重複する可能性がありますが、まだテストしていません。
編集:上記のコードを使用する代わりに、次の方法で XML ファイルを (既定の設定で) 直接読み込むことができます。
PreferenceManager.setDefaultValues(this, R.xml.preference, false);
このメソッドの詳細については、PreferenceManager のドキュメントを参照してください: http://developer.android.com/reference/android/preference/PreferenceManager.html