Приветствую.
Возникла проблема, у меня есть Edittext я в него ввожу цифры (номера страниц), и хочу введенные данные передать во ViewPager, чего только не перепробовал, не рабоает.
Button select_num_page = (Button) findViewById(R.id.select_num_page);
EditText num_page = (EditText) findViewById(R.id.num_page);
final int str = Integer.parseInt(num_page.getText().toString());
select_num_page.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
my_view_pager.setCurrentItem(str);
}
});
Приложение падает и выдает ошибку:
Process: jmapps.questions200, PID: 8115
java.lang.NumberFormatException: For input string: ""
Пытался преобразовать в Int на входе, то есть в методе setCurrentItem все равно не работает. Также в inputType в Edittext указывал и number и все остальное. Если я вместо str поставлю номер нужной страницы, например так:
my_view_pager.setCurrentItem(10);
То все работает. Вопрос: Как правильно получить вводимые в Edittext цифры, преобразовать их в Int и передать во Viewpager в методе onClick кнопки select_name_page?
Забирайте текст из EditText'a непосредственно в onClick. Вы его берёте из пустого, только что созданного.
Скорее всего в строке есть посторонние символы, попробуйте так:
final int str = Integer.parseInt(num_page.getText().toString().trim());
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости