【发布时间】:2017-07-24 11:48:49
【问题描述】:
方便用户自定义键盘。
根据光标的位置,我想显示两个不同的键盘,类似于图片中显示的键盘。
在第二个键盘中,一些键被省略以防止错误输入。如何实现显示的键与全键盘的位置相同,即省略的键应该是“不可见的”而不是“消失的”。不幸的是,我找不到键的相应 xml 属性。
【问题讨论】:
方便用户自定义键盘。
根据光标的位置,我想显示两个不同的键盘,类似于图片中显示的键盘。
在第二个键盘中,一些键被省略以防止错误输入。如何实现显示的键与全键盘的位置相同,即省略的键应该是“不可见的”而不是“消失的”。不幸的是,我找不到键的相应 xml 属性。
【问题讨论】:
据我所知,您是说“向上箭头”键正在向左侧“移动”,因为您已经摆脱了“EE”键?
我认为你只是在android:horizontalGap之后,可以应用于每个Keyboard.Key。我会创建两个布局。第一个是顶部键盘,第二个基本上是第一个的调整版本,使用前面提到的android:horizontalGap 添加填充。因此,当导致切换的事件发生时,Keyboard 会更改为正确的布局。
【讨论】:
我有一个简单的解决方案。 将您的目标键 x 或 y 属性设置为不正确的值。此键将处于无效状态。这样的代码
override fun onDraw(canvas: Canvas?) {
//keyboard.keys[index].x = -999
keyboard.keys[index].y = -999
super.onDraw(canvas)
//do something
}
【讨论】: