Android - SharedPreference.getBoolean recuperando falso incluso si estoy almacenando true?

Estoy usando SharedPreference para almacenar el estado de las casillas de verificación, pero incluso estoy almacenando verdadero en él, todavía se está recuperando falso.

Aquí está mi código -

@Override
public void onPause()
{
    super.onPause();
    saveState();
}


@Override
public void onResume()
{
    super.onResume();
    loadState();

}
@Override
public void onRestart()
{
    super.onRestart();
    loadState();
}

public void saveState()
{
    SharedPreferences sp = getPreferences(Context.MODE_PRIVATE);
    SharedPreferences.Editor editor = sp.edit();
    for(int i = 0; i < itemCheck.length; i++)
    {
        Boolean b = itemCheck[i];
        Log.e(TAG, b.toString());
        editor.putBoolean(i+"", itemCheck[i]);
    }
}
public void loadState()
{
    SharedPreferences sp = getPreferences(Context.MODE_PRIVATE);
    for(int i = 0; i < itemCheck.length; i++)
    {

        itemCheck[i] = sp.getBoolean(i+"", false);
        Boolean b = itemCheck[i];
        Log.e(TAG, b.toString());
    }
    for(int i = 0; i < itemCheck.length; i++)
    {
        lv.setItemChecked(i, itemCheck[i]);
    }
}

Me da falso porque configuro falso como un valor predeterminado en getBoolean que debería devolverse en ausencia de una clave predefinida. Echa un vistazo y dime qué hice mal. Gracia

Respuestas a la pregunta(2)

Su respuesta a la pregunta