2015-10-02 43 views
1

這是一個沒有鍵盤,屏幕:如何在鍵盤上升時調整列表視圖的大小?

http://i.stack.imgur.com/YOnMf.png

但是,當我點擊的EditText和鍵盤上升,頭弄亂了和消失,因爲它會漲得:

http://i.stack.imgur.com/zyJ3j.png

這是代碼:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
tools:context=".SecondActivity" 
android:background="@color/white"> 

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="55dp" 
    android:id="@+id/abs" 
    android:orientation="horizontal" 
    android:layout_alignParentTop="true" 
    android:gravity="center"> 

     <ImageView 
      android:layout_width="50dp" 
      android:layout_height="50dp" 
      android:id="@+id/btnVoltar" 
      android:src="@drawable/inochat" 
      android:layout_marginLeft="3dp"/> 

     <ImageView 
      android:layout_width="50dp" 
      android:layout_height="50dp" 
      android:id="@+id/usu" 
      android:src="@drawable/usuario" 
      android:layout_alignParentRight="true" 
      android:background="@drawable/foto" 
      android:layout_marginRight="2dp" 
      android:layout_marginTop="3dp"/> 

     <TextView 
      android:layout_width="fill_parent" 
      android:layout_toLeftOf="@+id/addfavorito" 
      android:layout_height="wrap_content" 
      android:textAppearance="?android:attr/textAppearanceMedium" 
      android:text="Nome" 
      android:id="@+id/nomeoutro" 
      android:layout_centerVertical="true" 
      android:layout_toRightOf="@+id/btnVoltar" 
      android:layout_toEndOf="@+id/btnVoltar" 
      android:textColor="#000000" 
      android:textSize="15dp" 
      android:layout_marginLeft="5dp"/> 

     <ImageView 
      android:layout_width="match_parent" 
      android:layout_height="2dp" 
      android:src="@drawable/traco" 
      android:layout_alignParentBottom="true"/> 

     <ImageButton 
      android:layout_width="40dp" 
      android:layout_height="40dp" 
      android:id="@+id/addfavorito" 
      android:layout_centerVertical="true" 
      android:layout_toStartOf="@+id/usu" 
      android:src="@drawable/fav"/> 
</RelativeLayout> 

<android.support.v4.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/swipe_refresh_layout" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/llMsgCompose" 
    android:layout_below="@+id/abs"> 

    <ListView 
     android:isScrollContainer="false" 
     android:layout_above="@+id/llMsgCompose" 
     android:id="@+id/txtMensagens" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:background="@null" 
     android:divider="@null" 
     android:transcriptMode="alwaysScroll"> 
    </ListView> 

</android.support.v4.widget.SwipeRefreshLayout> 

<RelativeLayout 
    android:id="@+id/llMsgCompose" 
    android:layout_width="match_parent" 
    android:layout_height="40dp" 
    android:background="@color/white" 
    android:layout_alignParentBottom="true" 
    android:layout_marginBottom="1dp" 
    android:gravity="center"> 

    <EditText 
     android:id="@+id/txtMensagem" 
     android:layout_width="50dp" 
     android:layout_height="fill_parent" 
     android:background="@color/bg_msg_input" 
     android:textColor="@color/text_msg_input" 
     android:paddingLeft="6dp" 
     android:paddingRight="6dp" 
     android:inputType="text" 

     android:layout_alignParentRight="true" 
     android:layout_toRightOf="@+id/icone"/> 

    <ImageView 
     android:layout_width="40dp" 
     android:layout_height="40dp" 
     android:id="@+id/icone" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentLeft="true" 
     android:background="@color/bg_msg_input" 
     android:src="@drawable/msg"/> 
</RelativeLayout> 

</RelativeLayout> 
+0

嘗試添加機器人:windowSoftInputMode = 「adjustResize」 在您的活動代碼在清單或Android:windowSoftInputMode =」 adjustPan「 – Aakash

回答

1

嘗試增加噸他以下爲此次活動的清單:

機器人:windowSoftInputMode = 「adjustPan」

機器人之間的區別:windowSoftInputMode = 「adjustPan」機器人:windowSoftInputMode = 「adjustResize」

「adjustResize」

調整活動的窗口大小,爲屏幕上的軟鍵盤騰出空間。

「adjustPan」

的活動窗口的內容會自動平移,使目前的工作重點是永遠不會阻止鍵盤。這樣用戶就可以看到他們正在輸入的內容。這通常不如調整大小,因爲用戶可能需要關閉軟鍵盤才能與窗口的遮蔽部分進行交互。

另外,請參閱本博客,

http://android-developers.blogspot.com/2009/04/updating-applications-for-on-screen.html

喜歡的東西,

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

我們試過了,但沒有奏效。點擊EditText時它仍然會上升。不過謝謝! –

+0

哦,可以試試這個嗎? android:windowSoftInputMode =「adjustNothing」 – dhun

+0

我們已經試過了。由於某種原因,Manifest中沒有任何標籤不能像我們想要的那樣工作。 –

相關問題