自定义键盘
系统定义的键盘不喜欢,反正代码开源,可以自己定制,还可以移动哦。

键盘代码.c文件
#include "lvgl/lvgl.h"
#include "../inc/user_keyboard.h"
#include <stdio.h>
User_Keyboard_info User_Keyboard_t;
User_Keyboard_def User_Keyboard_d;
lv_obj_t* label2;
static const char* btnm_num_map[] = { LV_SYMBOL_LEFT, LV_SYMBOL_RIGHT, LV_SYMBOL_BACKSPACE,"\n",
"1", "2", "3","\n",
"4", "5", "6", "\n",
"7", "8", "9", "\n",
"+/-","0", ".","" };
static const char* btnm_map[] = { LV_SYMBOL_CLOSE, "" };
static void event_handler(lv_obj_t* obj, lv_event_t event)
{
if (event == LV_EVENT_VALUE_CHANGED)
{
lv_label_set_text(label2, lv_textarea_get_text(User_Keyboard_d.testta));
lv_obj_align(label2, User_Keyboard_t.cont, LV_ALIGN_IN_TOP_MID, 0, 0);
}
}
//创建一个测试文本域
void Create_test_taxta(void)
{
User_Keyboard_d.testta = lv_textarea_create(lv_scr_act(), NULL);
lv_cont_set_fit2(User_Keyboard_d.testta, LV_FIT_PARENT, LV_FIT_NONE);
lv_textarea_set_text(User_Keyboard_d.testta, "");
lv_textarea_set_one_line(User_Keyboard_d.testta, true);
lv_textarea_set_cursor_hidden(User_Keyboard_d.testta, true);
lv_obj_set_event_cb(User_Keyboard_d.testta, event_handler);
}
static void del_event_handler(lv_obj_t* obj, lv_event_t event)
{
if (event == LV_EVENT_RELEASED)
{
lv_obj_del(User_Keyboard_t.cont);
}
}
//初始化键盘的参数
void Init_Keyboard_Param(void)
{
User_K