我试着做一个键盘,就像最初的Android键盘一样。我键盘上的按键只是一个简单的按钮,背景是一个图像。我注意到,与原来的键盘相比,在我的键盘上输入要困难得多。似乎有一种容忍度:
http://i.imgur.com/fdMgaPX.png
如果你击中红点,你会得到A。如果你击中蓝点,你会得到U或J。如果你不写一封信,你就不能击中任何点。在我的键盘上,这种情况经常发生,尽管它看起来是一样的,键之间的距离也是相等的。有没有人知道如何实现这个功能,或者有关于这个函数的更多信息?
谢谢!
发布于 2014-03-10 02:03:47
这取决于您是否对键使用了Button类。如果是这样的话,就没有办法定义所谓的容差。
为了避免这种情况,我创建了一个类键扩展视图或TextView。它不那么简单,因为你必须自己定义一个背景,一个字体大小;但它会更灵活,因为你可以创建一个比按钮小一点的自定义hitbox (并由Rect定义)。例如,您的按钮大小减去5dp的边距。
然后在onTouchEvent中,我会检查手指位置是否在hitbox内。如果不是,只需返回给调用者。
https://stackoverflow.com/questions/22130415
复制相似问题