Tastiera popup di tastiera personalizzata Android per la printing a lungo

Ho tastiera Android personalizzata:

public class CustomKeyboard extends Keyboard{...} public class CustomKeyboardView extends KeyboardView{...} public class CustomKeyboardIME extends InputMethodService implements KeyboardView.OnKeyboardActionListener{...} 

Su alcuni tasti, ho popupKeyboard e popupCharacters :

  • Vista tastiera personalizzata in android
  • Trovare se usb esterno o tastiera bluetooth collegati in Android
  • Come sviluppare una tastiera soft per Android?
  • InputType di EditText in Android
  • Distriggers la window di dialogo preferenze android sulla tastiera ACTION_DONE premere
  • Tastiera numbersca predefinita di Android EditText e consentire il text
  •  <Key android:codes="144" android:keyLabel="0" android:popupKeyboard="@xml/key_popup" android:popupCharacters=")" android:keyEdgeFlags="right"/> 

    xml / key_popup.xml:

     <Keyboard xmlns:android="http://schemas.android.com/apk/res/android" android:keyWidth="10%p" android:horizontalGap="0px" android:verticalGap="0px" android:keyHeight="@dimen/key_height" > </Keyboard> 

    Ma quando ho preso a lungo il tasto "0" con ")", ma rimarrà fino a quando non premere il button "X" o ")". Sembra così:
    La mia tastiera

    E voglio che sia aperto soltanto mentre sto tenendo un dito. Qualcosa di simile alla tastiera Samsung o HTC:
    Tastiera Samsung

    Qualcuno può aiutarmi per favore?

    EDIT È alless ansible cambiare l'aspetto di questo popup? Voglio che abbia lo stesso background e le chiavi della tastiera intera che ho fatto /

  • implementare onKeyPreIme (int KeyCode, evento KeyEvent) in Frammento
  • Perché android InputMethodManager.showSoftInput () restituisce false?
  • One Solution collect form web for “Tastiera popup di tastiera personalizzata Android per la printing a lungo”

    È ansible utilizzare la class PopupWindow e popolarla con un layout personalizzato.

     View custom = LayoutInflater.from(context) .inflate(R.layout.your_layout, new FrameLayout(context)); PopupWindow popup = new PopupWindow(context); popup.setContentView(custom); 

    e sulla lunga pressione

     //Get x,y based on the touch position //Get width, height based on your layout if(popup.isShowing()){ popup.update(x, y, width, height); } else { popup.setWidth(width); popup.setHeight(height); popup.showAtLocation(yourKeyboardView, Gravity.NO_GRAVITY, x, y); } 

    Facendo clic sul button popup è ansible distriggersrlo

     popup.dismiss(); 
    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.