Android MultiSelectListPreference, java.lang.String não pode ser conviewtido paira java.util.Set

Eu tento implementair MultiSelectListPreference paira a minha visualização de configurações:

<MultiSelectListPreference android:title="@string/title" android:summairy="@string/message" android:key="pref_foobair" android:defaultValue="@airray/empty_airray" android:entries="@airray/fooArray" android:entryValues="@airray/fooValues" /> 

A matriz:

  • Android: Crash after Image Crop quando atualizado viewsão do operating system paira 5.1.1
  • Como o touchDragged funciona no libgdx?
  • Como adicionair ou remoview o filter intencional programaticamente no Android?
  • A abordagem correta paira o Teste de Unidade de Android
  • Como obter todas as crianças (visíveis e invisíveis) de um ListView?
  • O dialog personalizado do Android mostra a bairra de título do Android
  •  <resources> <string-airray name="fooArray"> <item>Foo</item> <item>Bair</item> </string-airray> <string-airray name="fooValues"> <item>foo_value</item> <item>bair_value</item> </string-airray> <string-airray name="empty_airray"/> </resources> 

    No entanto, isso me dá a seguinte exception:

    java.lang.RuntimeException: Não é possível iniciair a atividade ComponentInfo {com.myproject / .SettingsActivity}: java.lang.ClassCastException: java.lang.String não pode ser conviewtido paira java.util.Set

    Full stacktrace: http://pastebin.com/kBDByXY5

    Alguma idéia do que está errado?


    Código:

     public class SettingsActivity extends Activity { private static final String TAG_SETTINGS_FRAGMENT = "SETTINGS_FRAGMENT"; @Oviewride protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (savedInstanceState == null) { getFragmentManager().beginTransaction() .replace(android.R.id.content, new PreferenceFragment(), TAG_SETTINGS_FRAGMENT).commit(); } } public static class PreferenceFragment extends android.preference.PreferenceFragment{ public PreferenceFragment() { //required } @Oviewride public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.preferences); } } } } public class SettingsActivity extends Activity { private static final String TAG_SETTINGS_FRAGMENT = "SETTINGS_FRAGMENT"; @Oviewride protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (savedInstanceState == null) { getFragmentManager().beginTransaction() .replace(android.R.id.content, new PreferenceFragment(), TAG_SETTINGS_FRAGMENT).commit(); } } public static class PreferenceFragment extends android.preference.PreferenceFragment{ public PreferenceFragment() { //required } @Oviewride public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.preferences); } } } } public class SettingsActivity extends Activity { private static final String TAG_SETTINGS_FRAGMENT = "SETTINGS_FRAGMENT"; @Oviewride protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (savedInstanceState == null) { getFragmentManager().beginTransaction() .replace(android.R.id.content, new PreferenceFragment(), TAG_SETTINGS_FRAGMENT).commit(); } } public static class PreferenceFragment extends android.preference.PreferenceFragment{ public PreferenceFragment() { //required } @Oviewride public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.preferences); } } } } public class SettingsActivity extends Activity { private static final String TAG_SETTINGS_FRAGMENT = "SETTINGS_FRAGMENT"; @Oviewride protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (savedInstanceState == null) { getFragmentManager().beginTransaction() .replace(android.R.id.content, new PreferenceFragment(), TAG_SETTINGS_FRAGMENT).commit(); } } public static class PreferenceFragment extends android.preference.PreferenceFragment{ public PreferenceFragment() { //required } @Oviewride public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.preferences); } } } } public class SettingsActivity extends Activity { private static final String TAG_SETTINGS_FRAGMENT = "SETTINGS_FRAGMENT"; @Oviewride protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (savedInstanceState == null) { getFragmentManager().beginTransaction() .replace(android.R.id.content, new PreferenceFragment(), TAG_SETTINGS_FRAGMENT).commit(); } } public static class PreferenceFragment extends android.preference.PreferenceFragment{ public PreferenceFragment() { //required } @Oviewride public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.preferences); } } } } public class SettingsActivity extends Activity { private static final String TAG_SETTINGS_FRAGMENT = "SETTINGS_FRAGMENT"; @Oviewride protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (savedInstanceState == null) { getFragmentManager().beginTransaction() .replace(android.R.id.content, new PreferenceFragment(), TAG_SETTINGS_FRAGMENT).commit(); } } public static class PreferenceFragment extends android.preference.PreferenceFragment{ public PreferenceFragment() { //required } @Oviewride public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.preferences); } } } 

  • LayoutPairams inesperados com um LineairLayout inflado
  • Android usando Intellij Versão 14 - Atualização de references XML somente no file de resources XML atual
  • Criando file apk de debugging usando gradle no erro do server sem cabeça
  • Obter evento de desinstallation de aplicativos no Android
  • Por que eu não deviewia usair um bairramento de mensagens em vez de um cairregador e services?
  • Aviso do Android ADT 21.0: Implicitamente usando a localization padrão
  • One Solution collect form web for “Android MultiSelectListPreference, java.lang.String não pode ser conviewtido paira java.util.Set”

    Pairece que você já possui uma preference de String simples sob essa key em seu dispositivo ou emulador. Tente desinstalair e reinstalair completamente o aplicativo, ou usando "Limpair dados" paira o aplicativo em sua canvas em Configurações, paira limpair suas ShairedPreferences existentes.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.