Я извлечение целого значения из sharedpreferences, как это:ClassCastException без какой-либо конкретной ошибки кода
AudioManager Am = (AudioManager) getActivity().getSystemService(Context.AUDIO_SERVICE);
int errorThisLine250 = prefs.getInt("adanvlm", Am.getStreamMaxVolume(AudioManager.STREAM_MUSIC));
и я получаю эту ошибку !!!
java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer
at android.app.SharedPreferencesImpl.getInt(SharedPreferencesImpl.java:239)
at aim.salatuna7.dialogs.AdanDialog.onCreateDialog(AdanDialog.java:250)
starnge здесь является то, что приложение было прекрасно работает без каких-либо ошибок, сегодня он начинает показывать эту ошибку всякий раз, когда я показываю диалог. Ошибка на int errorThisLine250. Какие-либо предложения?
Edit: Я пробовал:
Integer.parseInt(prefs.getString("adanvlm", String.valueOf(Am.getStreamMaxVolume(AudioManager.STREAM_MUSIC))));
и это НЕ работает тоже.
или добавить «обратную совместимость» код, который делает prefs.getInt() в примерочных поймать блок, а затем попытаться GetString если КлассCastException брошен! – RobP
Спасибо за очень быстрый ответ, но я пробовал все, что вы говорили много раз, не повезло! любая помощь, пожалуйста? Я застрял @commonsWare – Leebeedev
@CommonsWare, я использую preference.xml, как будто –
Leebeedev