#string #textview #int #ivalueconverter #parseint
#строка #textview #int #ivalueconverter #parseint
Вопрос:
Я знаю, что есть много сообщений, подобных этому, но я их прочитал, и мое приложение еще не работает. Я пытаюсь преобразовать параметр TextView в int. Я использую это:
int MyScore;
TextView score = (TextView) findViewById(R.id.highscore);
MyScore = Integer.parseInt(score.toString());
Когда я запускаю программу и обогащаю до места, это должно сработать, моя программа разрушается из-за последней строки: MyScore = Integer.parseInt(score.toString());
Как я могу это решить?
Ответ №1:
Ваша последняя строка должна гласить
MyScore = Integer.parseInt(score.getText().toString());
toString()
Метод, вызываемый для вашего score
объекта, описывает score
объект, он не возвращает строку, введенную в score
объект. Пожалуйста, обратитесь к руководствам Oracle Java. Неплохо бы прочитать большинство из них.
Комментарии:
1. использование TextView.getText().toString() (как предложил @Floris) вернет текст TextView. Работает так же для EditText, если вам когда-нибудь понадобится.
Ответ №2:
Поскольку вы не указали используемый язык, я не могу ответить полностью, но я могу догадаться, в чем проблема. Большинство полей ввода имеют значение или свойство text, попробуйте проанализировать это.