Ошибка Невозможно привести строку к целому числу
Я не могу изменить значение EditTextPreference со строки на int. Я сделал таким образом:
WifiOnOffValue = (EditTextPreference) findPreference("WifiOnOffValue");
String value = WifiOnOffValue.getText().toString();
if(value != null && !value.isEmpty()) {
try {
vedit = Integer.parseInt(value);
}
catch (NumberFormatException ex) {
ex.printStackTrace();
vedit = 0;
}
}
И я получаю ошибку java.lang.Integer cannot be cast to java lang.String
... Мне нужно преобразовать значение моего EditTextPreference в целое число. Спасибо
Журнал:
Код:
//-- Edittext Wifi
WifiOnOffValue = (EditTextPreference) findPreference("WifiOnOffValue");
String value = WifiOnOffValue.getText().toString().trim();
if(value!=null && !value.isEmpty()){
try{
vedit = Integer.parseInt(value);
} catch (NumberFormatException ex) {
ex.printStackTrace();
vedit=0;
}
}
Решено.. это было решением: ClassCastException в PreferenceActivity кажется, что он хранил неправильные значения. Теперь я могу запустить приложение и, кажется, все идет хорошо. Для меня было просто удалить и переустановить приложение... так странно. Все равно спасибо всем
3 ответа
Не могли бы вы проверить тип переменной vedit? Ошибочно объявлен как String?
Попробуй использовать String value = WifiOnOffValue.getText().toString().trim()
и выйдите из системы, чтобы увидеть значение value
является
Должно ли это быть
WifiOnOffValue = (EditTextPreference) getPreferenceManager().findPreference("WifiOnOffValue");