2013-08-05 14 views
8

Sto creando l'interfaccia utente dell'applicazione. Quando ho provato a inserire il valore nel EditText, la tastiera sposta l'interfaccia utente verso l'alto. Aiutatemi quando tastiera aperta, quindi non dovrebbe spostare l'interfaccia utente verso l'alto.UI sposta verso l'alto quando la tastiera è aperta

<activity 
     android:name=".AddProductsActivity" 
     android:configChanges="orientation" 
     android:hardwareAccelerated="false" 
     android:windowSoftInputMode="adjustResize" /> 

risposta

12

Ha risolto il mio problema.

Grazie a tutti.

<activity 
    android:name=".AddProductsActivity" 
    android:configChanges="orientation" 
    android:hardwareAccelerated="false" 
    android:windowSoftInputMode="adjustPan" /> 
+0

Soluzione piacevole !! –

0

aggiuntivo seguente tag line la vostra attività in menifest

android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 
1
  1. Usa RelativeLayout per la visualizzazione superiore e inferiore bar all'interno di un altro RelativeLayout, che copre tutto lo schermo.

per barra superiore:

android:id="@+id/top" 
android:layout_alignParentTop = "true" 
android:layout_alignParentRight = "true" 
android:layout_alignParentLeft = "true" 
android:layout_width="wrap_content" 
android:layout_height="<fix height like 50dp or as per requirement>" 

per la barra in basso:

android:id="@+id/bottom" 
android:layout_alignParentBottom="true" 

  1. Ora aggiungere uno ScrollView come questo:

    un ndroid: layout_width = "wrap_content" android: layout_height = "wrap_content" android: layout_below = "@ + id/top" android: layout_above = "@ + id/basso"

  2. Ora aggiungere una vista bambino questa vista di scorrimento, che potrebbe essere qualsiasi fuori da RelativeLayout o LineareLayout. Abbiamo bisogno di questa vista figlio per racchiudere le viste di altri bambini, che vogliamo aggiungere nel mezzo dello schermo, ora tutto ciò che vogliamo vedere, basta aggiungere quella vista come un figlio di questo layout come EditText o qualsiasi cosa tu voglia.

Ora quando la tastiera si presenta, lo ScrollView mezzo scorrerà a testa, che non alterare l'interfaccia utente ..

Spero che sarebbe utile, torna da me se avete ancora problemi con questo .. :)

0

Rimuovere questa riga android: windowSoftInputMode = "adjustResize" dal tag nel file manifest a tale attività.

0

perché sto utilizzando TabActivity per la mia attività principale e poi FragmentActivity per le mie attività a schede, le impostazioni di manifesta non sembra aiutare. Quindi, la mia soluzione è questa:

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); 
    setContentView(R.layout.activity_fragment); 
    // Setup fragment 
    if (savedInstanceState == null) { 
     getSupportFragmentManager().beginTransaction() 
       .add(R.id.container, new Fragment()) 
       .commit(); 
    } 
} 

chiamare esplicitamente setSoftInputMode (SOFT_INPUT_ADJUST_RESIZE) su creare. Spero che possa aiutare alcune persone se manifest.xml non aiuta.

Problemi correlati