开发者社区> 宋志辉> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

9.2、Libgdx的输入处理之鼠标、触摸和键盘

简介: (官网:www.libgdx.cn) Libgdx支持的最主要的设备是desktop或浏览器的鼠标支持,Android的触摸屏支持和键盘的支持。我们接下来了解一下。
+关注继续查看

(官网:www.libgdx.cn

Libgdx支持的最主要的设备是desktop或浏览器的鼠标支持,Android的触摸屏支持和键盘的支持。我们接下来了解一下。

键盘

用户按下或释放一个按键生成了相应的事件。每个事件包含了一个 key-code来识别是哪个按键按下或释放。这些key-code在不同的平台是不同的。Libgdx要做的就是隐藏不同系统之前的差别。可以查阅Keys类。你可以通过轮询来判断是哪个键被按下。

单独的key-code不能告诉我们用户输入了什么。这通常是组合键造成这种困扰,比如可以通过shift和a来输入A。

鼠标和触摸

鼠标和触摸输入允许用户在屏幕上进行点击。两种输入机制都会返回点击的坐标。原点在左上角,x轴向右,y轴向下。

鼠标输入还包含额外的信息,通知哪个按键被按下。大部分鼠标包含左键、右键和中间键。另外,鼠标通常包含滚轮在应用中进行缩放和滚动等操作。

触摸输入没有按钮的概念。可能支持多点触摸,这取决于具体的设备。第一代Android手机仅仅支持单点触摸。现在大部分手机都支持多点触摸。

需要注意的是,触摸操作在不同的设备中有所差异。这就使得触摸事件触发后悔产生一定的问题。所以要尽可能多的在多台设备上测试你的游戏。

Libgdx抽象同一的对鼠标和触摸事件进行处理。我们可以将鼠标视为一种特殊的触摸。单点触摸,除了坐标外,还会报告按下的按键。触摸输入支持多点触摸,所有的触摸事件都会默认设置鼠标左键(只要你点击屏幕,Libgdx按你鼠标点击左键处理,只不过支持多点)。

需要注意的是Android坐标系统跟屏幕的方向无关。取决于你在应用中的设置。

鼠标和触摸都能通过轮询和事件驱动进行处理。
www.libgdx.cn版权所有,如需转载,注明出处)

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Python 技术篇-pyHook键盘鼠标监听事件,监测鼠标键盘按键实例演示
Python 技术篇-pyHook键盘鼠标监听事件,监测鼠标键盘按键实例演示
0 0
写了个鼠标键盘模拟器,希望对大家有用哈!
写了个鼠标键盘模拟器,希望对大家有用哈! NOTE:写这个工具主要是帮老婆写了个自动化工具,减轻老婆重复操作的麻烦。 地址: https://github.
758 0
触摸屏:屏幕键盘(虚拟键盘)解决方案
原文:触摸屏:屏幕键盘(虚拟键盘)解决方案  最近需要在win XP系统的工控机上进行程序的开发,工控机是电阻式触摸屏,需要在上面使用触摸键盘,使工控机可以脱离鼠标和键盘独立运行程序。调研后得到一系列的解决方案,mark如下: (1)自己在程序中开发虚拟键盘 这个是最先想到的,本人用C#进行开发,所以只关注C#相关的虚拟键盘开发。
968 0
C#中使用WinIO模拟键盘鼠标(转)
原文地址在哪忘了,对不起额。   public class WinIOLab    {        private const int KBC_KEY_CMD = 0x64;        private const int KBC_KEY_DATA = 0x60;        [DllImport("winio32.
1824 0
Qt实用技巧:将QWidget作为输入窗口,接收键盘消息、输入法并且控制输入法悬浮工具栏位置控制
Qt实用技巧:将QWidget作为输入窗口,接收键盘消息、输入法并且控制输入法悬浮工具栏位置控制
0 0
iOS 键盘弹出视图上移
iOS 键盘弹出视图上移 首先明白两个概念 -坐标系 iOS坐标系原点都是左上角,无论哪种坐标系 -frame,bounds 两者都是CGRect结构,定义初始点的位置及长宽,不同的是frame是相对坐标,即相对于父视图的坐标,bounds是的绝对坐标,相对于根视图。 键盘弹出,改变的是当前视图相对父视图的位置,所以改变的是frame的坐标 常用的登陆视图 /
828 0
+关注
宋志辉
我竭尽全力
文章
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载