Question

Peut-être une certaine expérience: Je suis en train d'avoir un clavier spécifique vue visible au-dessus d'un scrollable EditText plein écran lorsque l'utilisateur clique dessus. Le problème est que si le curseur se trouve au bas de l'EditText il est caché par le clavier vue sauté vers le haut.

La différence évidente à la vue régulière IME est que la vue pousse IME le EditText vers le haut et permet à l'utilisateur défiler toute EditText dans cette zone supérieure. Le clavier vue se trouve au fond. Tout est visible et accessible. Voilà ce que je veux réaliser avec mon pop-up aussi.

Par conséquent, ma question est: qu'est-ce que l'aspect de la mise en page comme lorsqu'un régulière est visible IME? Je ne ai pas besoin de l'animation (s'il est difficile de le faire, je peux sauter cette partie).

J'ai essayé de boucle à travers le schéma de la hiérarchie pour voir ce qui est différent. Voici avec visible IME:

root: com.android.internal.policy.impl.PhoneWindow$DecorView
  android.widget.LinearLayout
    android.widget.FrameLayout
      android.widget.TextView
    android.widget.FrameLayout               #1
      android.widget.RelativeLayout
        android.widget.ScrollView
          android.widget.EditText
        com.mytest.KeyboardView

Ici, il est sans mon avis et IME pop-up visible:

root: com.android.internal.policy.impl.PhoneWindow$DecorView
  android.widget.LinearLayout
    android.widget.FrameLayout
      android.widget.TextView
    android.widget.FrameLayout               #1
      android.widget.RelativeLayout
        android.widget.ScrollView
          android.widget.EditText
        com.mytest.KeyboardView

De toute évidence, il n'y a pas de différence. Est-ce vraiment le manque IME?

Pour faciliter la compréhension que j'ai marqué mon application avec « # 1 », de sorte que le RelativeLayout est la racine-élément dans mon XML-layout.

Quelqu'un peut-il me aider s'il vous plaît? Si quelqu'un a une mise en page de style XML prêt, je serais plus heureux de le voir.

Mise à jour

Maintenant, je crois que je me suis trompé en pensant que la vue serait IME se mettre dans le schéma de la hiérarchie de l'activité.

En attendant, je tente de faire un travail de PopupWindow, mais n'a pas pu trouver quelque chose qui réglerait le problème avec le curseur caché dans le EditText.

Par conséquent, permettez-moi de poser cette question: comment la vue apparaît IME ou comment est-il tissé dans l'affichage global? Comment se fait il défiler sous le champ d'édition et déplace le champ d'édition et fait défiler la façon dont il fait?

Était-ce utile?

La solution

Il semble que l'IME n'est pas accessible. Ou du moins il n'est pas accessible de quelque manière que par l'application.

J'ai maintenant une vue assez statique de mon EditText et le clavier. Le clavier ne hover dans l'écran, ni elle ne toute autre substance de fantaisie. Il est monté en dessous du EditText. C'est ça. Il ne semble pas spectaculaire ou quoi que ce soit, mais nous ici d'accord que l'utilisateur ne sera probablement pas entrer dans des histoires longues.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top