2013-04-29 5 views
2

Dans un fragment i utilise cette mise en pageclavier Android chevauche EditText

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/header_layout" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:gravity="center" > 

<LinearLayout 
    android:id="@+id/layoutButtonAdd" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:orientation="vertical" > 

    <ImageView style="@style/line" /> 

    <Button 
     android:id="@+id/buttonAdd" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:text="@string/addSrButton" 
     android:visibility="gone" /> 
</LinearLayout> 

<LinearLayout 
    android:id="@+id/layoutList" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_above="@id/layoutButtonAdd" 
    android:layout_alignParentTop="true" 

    android:orientation="vertical" > 


    <LinearLayout 
     android:id="@+id/progressContainer" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:gravity="center" 
     android:orientation="vertical" 
     android:visibility="gone" > 

     <ProgressBar 
      style="?android:attr/progressBarStyleLarge" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" /> 

     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:paddingTop="4dip" 
      android:singleLine="true" 
      android:text="" 
      android:textAppearance="?android:attr/textAppearanceSmall" /> 
    </LinearLayout> 

    <LinearLayout 
     android:id="@+id/listContainer" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="vertical" 
     android:paddingBottom="1dip" 
     android:paddingLeft="9dip" 
     android:paddingRight="4dip" 
     android:paddingTop="1dip" > 

     <ListView 
      android:id="@android:id/list" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:descendantFocusability="beforeDescendants" 
      android:drawSelectorOnTop="false" 
      android:visibility="gone" /> 

     <TextView 
      android:id="@+id/internalEmpty" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:gravity="center" 
      android:textAppearance="?android:attr/textAppearanceLarge" /> 
    </LinearLayout> 

</LinearLayout> 

Au android:id="@android:id/list" i ajouter dynamiquement vue nécessaire (édition de texte, par exemple).

Le problème est que si je clique sur l'EditText pour la première fois, cela prend le focus et la fenêtre ajuste le panoramique correctement. Mais si je clique sur le editText qui a déjà le focus, le clavier apparaît mais il chevauche le champ EditText nécessaire (c'est-à-dire que le réglage de pan ne fonctionne pas correctement). Dans mon fichier manifeste, android:windowSoftInputMode="adjustPan" est défini. Je lis à propos du truc avec la mise en page avec ScrollView, mais j'ai déjà un élément avec scroll vertical (LinearLayout).

Des idées?

Répondre

2

essayez d'utiliser Android: windowSoftInputMode = « adjustResize »

+0

Ce n'est pas la solution pour moi parce que j'ai quelques vues au bas de editText (bouton en bas de la mise en page au moins) –

+0

oh peut vous chk ce lien http://www.vogella.com/blog/2010/10/25/android-windowsoftinputmode/ – Rupali

Questions connexes