I am developing Android soft keyboard:
public class CustomKeyboard extends Keyboard{...}
public class CustomKeyboardView extends KeyboardView{...}
public class CustomKeyboardIME extends InputMethodService implements KeyboardView.OnKeyboardActionListener{...}
On some keys, I have popupKeyboard and popupCharacters:
xml/key_popup.xml:
android:keyWidth="10%p"
android:horizontalGap="0px"
android:verticalGap="0px"
android:keyHeight="@dimen/key_height" >
But when I longPress on "0" key popup with ")" shows, but it stays there until I press "X" button or ")" character.
And I want it to be opened only while I am holding a finger on. Something like on iPhone keyboard:
Anyone can help?
Thanks!!
解决方案
I think you will need to create your own popup in this case, using PopupWindow or Dialog.
then you go into your keyboard and overwrite your onRelease method, like this:
@Override
public void onRelease(int primaryCode) {
myPopupWindow.dismiss();
}
To make your own popupWindow for keyboard see this thread:
Android custom keyboard popup keyboard on long press