Frage

Layout Meiner Tätigkeit der ist wie unten gezeigt.

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:orientation="vertical">

   <FrameLayout android:id="@+id/title_bar"
      android:layout_width="fill_parent"
      android:layout_height="25dip"
      android:background="@drawable/bg_title" />

   <LinearLayout android:id="@+id/main"
      android:width="fill_parent"
      android:layout_height="fill_parent"
      android:layout_weight="1">
         <ListView android:id="@+id/android:list"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" />
         <TextView android:id="@+id/android:empty"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" />
      </FrameLayout>
   </LinearLayout>

   <LinearLayout
      android:layout_width="fill_parent"
      android:layout_height="50dip" >
      <EditText android:id="@+id/query"
         android:layout_width="fill_parent"
         android:layout_height="wrap_content" 
         android:hint="Enter some search terms"
         android:singleLine="true" 
         android:layout_weight="1" />
      <Button android:id="@+id/btn_hide"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:background="@drawable/btn_hide"
         android:layout_marginLeft="6dip" />
   </LinearLayout>
 </LinearLayout>

So wird das Suchfeld auf der Unterseite des Bildschirms befestigt.

Aber, wenn der Benutzer klickt auf die EditText, Soft-Tastatur zeigt nach oben und drückt das Layout aus dem Bildschirm außer dem Suchfeld.

Ich bin gerade erst mit Android heraus, so bin ich etwas falsch mache hier ??

War es hilfreich?

Lösung

Versuchen Sie, die folgenden für Ihre Tätigkeit in Manifest fügte hinzu:

android:windowSoftInputMode="adjustPan"

Andere Tipps

Für diejenigen, die daran interessiert sind, die Differenz zwischen android:windowSoftInputMode="adjustPan" und android:windowSoftInputMode="adjustResize":

"adjustResize"

Das Hauptprogrammfenster Aktivität um Platz zu schaffen für die Soft-Tastatur auf dem Bildschirm der Größe verändert wird.

"adjustPan"

Der Inhalt des Fensters wird die Aktivität automatisch verrissen, so dass der aktuelle Fokus wird nie durch die Tastatur gesperrt. Dies ist so, kann der Benutzer sehen, was sie tippen. Dies ist im Allgemeinen weniger wünschenswert als Ändern der Größe, da der Benutzer muß möglicherweise die Soft-Tastatur schließen auf und die Interaktion mit verdeckter Teilen des Fensters zu erhalten.

Android Dokumentation

Zitiert Link

@Raj Wenn Sie mit einer Tabbed-Anwendung arbeiten müssen Sie fügen

android:windowSoftInputMode="adjustPan"

auf dem Activity, wo Sie die Registerkarten hinzufügen, würde dies höchstwahrscheinlich Launchers Aktivität sein.

Hier ist ein Ausschnitt aus meinem Code

<activity
   android:label="@string/app_name"
   android:name=".MainActivity" android:windowSoftInputMode="adjustPan">
   <intent-filter >
     <action android:name="android.intent.action.MAIN" />
     <category android:name="android.intent.category.LAUNCHER" />
   </intent-filter>

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top