@Axeles
Нечего тут пока писать

Как вывести заданное значение в TextView?

Всем доброго времени суток. У меня такая проблема. Я не могу вывести заданное значение в TextView. Есть переменная str равная 100, как только в Anfdroid я пытаюсь вывести её, приложение сразу же закрывается. Вернее оно даже не запускается. Неужели таким образом нельзя вывести значение?
public class MainActivity extends Activity implements OnClickListener{
	Button button1;
	EditText edittext;
	TextView textview, textview2;

	public int str = 100;
	
	@Override
        protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        //Находим элементы по ID
        button1 = (Button) findViewById(R.id.button1);
        edittext = (EditText) findViewById(R.id.editText1);
        textview = (TextView) findViewById(R.id.textView1);
        textview2 = (TextView) findViewById(R.id.textView2);
            
        // Присваиваем размер депозита
        textview2.setText(str); - ЗДЕСЬ ВОЗНИКАЕТ ОШИБКА
	
}

Всем огромное спасибо за помощь!
  • Вопрос задан
  • 9452 просмотра
Решения вопроса 1
@FoxInSox
Logcat прекрасно указывает на ошибку. Строка "Caused by ... Resources$NotFoundException: String resource ID #0x64" означает что вы вызываете следующий метод:
public final void setText(int resid) {
        setText(getContext().getResources().getText(resid));
}

0x64 это шестнадцатеричное представление вашего числа 100. Этот метод принимает в качестве параметра идентефикатор ресурса, а не просто число которое вы хотели бы отобразить в текстовом поле. Сконвертируйте ваше число в строку:

textview2.setText(String.valueOf(str));

Почитайте Java основы и Гайд по Андройду, иначе очень долго будете спотыкаться о подобные ошибки.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@breakmt
Вы передаете идентификатор на ресурс, которого нет
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы