我遇到了问题,我编写了一个覆盖onKeyDown的函数,所以要知道按下的按钮我写了这个:
KeyEvent.keyCodeToString(keyCode).replace("KEYCODE_", "");
一切正常但当我试图在旧设备中使用sdk< 12(3.1)它说没有这样的方法。
那么我该如何知道按下的按钮值?
答案 0 :(得分:0)
嗯,这个方法后来添加了虽然作为帮助你可以使用getDisplayLabel
作为基本键,但这只会返回一个表示按下按钮标签的字符。
现在,由于KeyEvents是Ints而不是枚举,因此获取代码名称并不容易,因为它只是变量的名称。您可以尝试使用反射来获取键码的变量名称,但如果您开始记录用户按下的每个按钮,它似乎是一个沉重的机制......