Android: ListPreference no admite valores int

En mi aplicación, tengo los valores como:

<ListPreference android:key="font_setting" android:title="@string/font" android:summary="%s" android:entries="@array/font_list" android:entryValues="@array/font_list_values" android:dialogTitle="@string/choose_font" /> 

Y los datos:

 <string-array name="font_list"> <item>"Small"</item> <item>"Medium"</item> <item>"Big"</item> </string-array> <integer-array name="font_list_values"> <item>1</item> <item>2</item> <item>3</item> </integer-array> 

Pero cuando elijo un valor, la aplicación se bloquea, hay error:

 java.lang.NullPointerException at android.preference.ListPreference.onDialogClosed(ListPreference.java:264) 

Me pareció que esto es realmente un problema muy antiguo planteado aquí . Y sorprendentemente, Google acaba de decir que no es un error y no hay solución? ¿Alguien tiene sugerencias?
Esto se prueba en Android versión 4.0.

¿Por qué no utilizar una matriz de cadenas y convertir a enteros más tarde ( Integer.valueOf() ), en el código:

 <string-array name="font_list_values"> <item>1</item> <item>2</item> <item>3</item> </string-array> 

Este error parece envejecer de alguna manera. También me enfrenté a este problema. Sólo use string-array y analizarlos con Integer.valueOf() .

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.