Процесс создания Inline-клавиатуры во многом схож:
inline_main = InlineKeyboardMarkup(inline_keyboard=[
[InlineKeyboardButton(text='YouTube', url='https://youtube.com')],
[InlineKeyboardButton(text='Telegram', url='https://t.me')]
])
И подставляется в роутер также:
@router.message(CommandStart())
async def cmd_start(message: Message):
await message.answer(f'Привет!', reply_markup=kb.inline_main)
Вот как это выглядит:
В отличие от других типов кнопок, в InlineKeyboardMarkup используется аргумент inline_keyboard. В него передаётся список, где каждый элемент — это тоже список кнопок. Таким образом, один список внутри соответствует одному ряду кнопок.
Особенность Inline-кнопок заключается в том, что при нажатии на них нельзя отправить сообщение в чат. Они могут перебрасывать по ссылке, открывать WebApp или отправлять коллбэк. Необходимо обязательно выбрать одно из этих действий.
P.S. Даже если эта статья устареет, она всё равно будет полезна для меня как напоминание о некоторых командах, чтобы не искать их снова в интернете. Возможно, через пару лет я вернусь к этой статье и вспомню некоторые моменты. А тем, кто дочитал до конца, желаю, чтобы ваши труды, проекты и творческие работы всегда были востребованы! =)