У меня есть пользовательская клавиатура с красными кнопками, когда я нажимаю, например, номер 1, когда цвет менялся на синий, когда я вытаскиваю палец с экрана, возвращается красный, я хочу остаться синим, кто-нибудь знает, как это сделать, вот мой изменение цвета (нажатие) XMLКак сохранить цвет фона ключа ...?
<selector xmlns:android="http://schemas.android.com/apk/res/android"
>
<item
android:state_pressed="true"
android:drawable="@drawable/pressed" />
<item
android:state_checkable="true"
android:state_pressed="true"
android:drawable="@drawable/download" />
<item android:drawable="@drawable/red"/>
</selector>
проверить это:
public class BasicOnKeyboardActionListener implements KeyboardView.OnKeyboardActionListener {
private Activity mTargetActivity;
public BasicOnKeyboardActionListener(Activity targetActivity) {
mTargetActivity = targetActivity;
}
@Override
public void swipeUp() {
// TODO Auto-generated method stub
}
@Override
public void swipeRight() {
// TODO Auto-generated method stub
}
@Override
public void swipeLeft() {
// TODO Auto-generated method stub
}
@Override
public void swipeDown() {
// TODO Auto-generated method stub
}
@Override
public void onText(CharSequence text) {
// TODO Auto-generated method stub
}
@Override
public void onRelease(int primaryCode) {
}
// TODO Auto-generated method stub
@Override
public void onPress(int primaryCode) {
}
// TODO Auto-generated method stub
@Override
public void onKey(int primaryCode, int[] keyCodes)
{
long eventTime = System.currentTimeMillis();
KeyEvent event = new KeyEvent(eventTime, eventTime,
KeyEvent.ACTION_DOWN, primaryCode, 0, 0 ,0 , 0,
KeyEvent.FLAG_SOFT_KEYBOARD | KeyEvent.FLAG_KEEP_TOUCH_MODE);
mTargetActivity.dispatchKeyEvent(event);
}
Pressed, скачать синий цвет – CJS