Java Telebot удаление inline клавиатуры, с запоминанием предыдущей
Прошу поддержки в поиске алгоритма запоминания состояний клавиатуры.
Хочу организовать многоуровневое меню:
Послал клавиатуру => юзер нажал на кнопку => текущая клавиатура и сообщение удалилась => появилась новые.
Но в новой клавиатуре есть кнопка назад, и должна открыться предыдущая клавиатура и так весь стек. Вложенностей не много: Страна => Регионы => События в регионах. Как бы по лучше это организовать к ответу код не обязательно прикреплять достаточно самой мысли. Я могу послать и удалить, мой вопрос как запомнить и хранить.
Если вопрос уже был прошу указать.
Ответы (1 шт):
Зачем что-то хранить если в кнопку Назад можно указать что именно открыть?
У каждой кнопки есть текст и callbackData куда можно передать любую строку.
Сначала делаете несколько кнопок выбора страны указав в callbackData что-то наподобие open_country id1.
После нажатия кнопки вы получаете этот текст,смотрите что он начинается с open_country вытаскиваете id и понимаете какую страну выбрал пользователь, отрисовываете регионы этой страны с данными open_region id2 и кнопку Назад с данными open_all_countries.
При нажатии на регион вы получаете id региона, отрисовываете кнопки с событиями и зная к какой стране принадлежит регион делаете кнопку назад с данными open_country id1