OpenEdv-开源电子网

 找回密码
 立即注册
查看: 3363|回复: 0

LVGL 8触摸屏和物理按键不能同时使用的疑问

[复制链接]

190

主题

401

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1289
金钱
1289
注册时间
2014-6-15
在线时间
143 小时
发表于 2021-8-18 15:26:10 | 显示全部楼层 |阅读模式
1金钱


type can be
• LV_INDEV_TYPE_POINTER touchpad or mouse
• LV_INDEV_TYPE_KEYPAD keyboard or keypad
• LV_INDEV_TYPE_ENCODER encoder with left/right turn and push options
• LV_INDEV_TYPE_BUTTON external buttons virtually pressing the screen

上边是从LVGL的document抄出来的,

我的设备设置了  输入类型为 LV_INDEV_TYPE_POINTER,触摸屏操作正常
然后,增加了一个输入设备为 LV_INDEV_TYPE_BUTTON,关键代码如下:

    /* Initialize and register a display input driver */
    lv_indev_drv_t indev_drv;
    lv_indev_drv_init(&indev_drv);      /*Basic initialization*/

    indev_drv.type = LV_INDEV_TYPE_POINTER;
    indev_drv.read_cb = evdev_read;   //lv_gesture_dir_t lv_indev_get_gesture_dir(const lv_indev_t * indev)
    lv_indev_t * my_indev = lv_indev_drv_register(&indev_drv);


    keyboard_init();
    lv_indev_drv_t indev_drv_btn;
    lv_indev_drv_init(&indev_drv_btn);
    indev_drv_btn.type = LV_INDEV_TYPE_BUTTON;
    indev_drv_btn.read_cb = keypad_read;
    lv_indev_t *indev_keypad = lv_indev_drv_register(&indev_drv_btn);


  然后,发现物理按键正常了,但是触摸屏幕上的button没反应了,

  我的问题:   1.  难道LVGL里这几种输入方式,这个只能支持一种吗?  如果我需要触摸屏和物理按键同时工作,怎么办?
  2. 物理按键还必须通过lv_indev_set_button_points()依附于虚拟button 吗?

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 18:18

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表