1

У меня есть EdiText в нижней части моего вопроса layout.The у меня был в том, что, когда он получает фокус сдвигов экрана вверх, чтобы освободить место для мягкого keyboard.To решить это я добавилSoftKeyboard скрывает EditText

android:windowSoftInputMode="adjustResize" 

внутри моей декларации Activity в manifest. Теперь проблема в том, что edittext скрывается за программной клавиатурой, хотя экран не сдвигается. Если вместо этого я поставил

android:windowSoftInputMode="adjustPan" 

то главное окно своей деятельности смещает вверх, которые я не хочу. Как я могу разрешить это так, что когда EdiText получает основное окно фокуса, НЕ сдвигается вверх, чтобы освободить место для мягкой клавиатуры, но основное окно изменяется, включая EdiText, так что клавиатура находится ниже EdiText, как видно из многих приложений.

Layout

<?xml version="1.0" encoding="utf-8"?> 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@color/background_feed"> 


    <ProgressBar 
     android:id="@+id/progress" 
     style="?android:attr/progressBarStyleLarge" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerInParent="true" 
     android:layout_gravity="center_horizontal|center_vertical" /> 



    <ListView 
     android:id="@+id/comments" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="#F7F7F7" 
     android:paddingTop="10dp" 
     android:layout_above="@+id/border_view_comment" 
     android:divider="@android:color/transparent" 
     android:dividerHeight="10dp" 
     android:paddingBottom="10dp" 
     android:clipToPadding="false" 
     android:scrollbarStyle="outsideOverlay" /> 

    <TextView 
     android:id="@+id/empty_view" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerInParent="true" 
     android:text="@string/no_comment_msg" 
     android:visibility="gone"/> 

    <View 
     android:id="@+id/border_view_comment" 
     android:layout_width="match_parent" 
     android:layout_height="1dp" 
     android:layout_above="@+id/commentlayout" 
     android:background="#C7C7C7" 
     android:visibility="gone"/> 


    <RelativeLayout 
     android:id="@+id/commentlayout" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:background="@drawable/comment_box_shadow" 
     android:padding="10dp"> 

     <ImageView 
      android:id="@+id/commentor_image" 
      android:layout_width="40dp" 
      android:layout_height="40dp" 
      android:layout_marginRight="15dp" 
      /> 

     <ImageView 
      android:id="@+id/clickPostComment" 
      android:layout_width="30dp" 
      android:layout_height="45dp" 
      android:layout_alignParentRight="true" 
      android:src="@drawable/post" 
      android:textColor="@color/white" /> 

     <EditText 
      android:id="@+id/commentsPost" 
      android:layout_width="match_parent" 
      android:layout_height="45dp" 
      android:layout_alignTop="@id/commentor_image" 
      android:layout_marginRight="10dp" 
      android:layout_toLeftOf="@id/clickPostComment" 
      android:layout_toRightOf="@id/commentor_image" 
      android:background="@drawable/comment_edittext_bg" 
      android:hint="Comments" 
      android:singleLine="true" 
      android:maxLength="140" 
      android:paddingLeft="10dp" 
      android:paddingRight="10dp" 
      android:textColor="@color/title_gray" 
      android:textColorHint="#d5d5d5" 
      android:textSize="15sp" /> 

     <ImageView 
      android:layout_width="25dp" 
      android:layout_height="30dp" 
      android:layout_alignTop="@id/commentsPost" 
      android:layout_marginLeft="10dp" 
      android:layout_marginRight="-2dp" 
      android:layout_toLeftOf="@id/commentsPost" 
      android:scaleType="fitStart" 
      android:src="@drawable/comment_shape" /> 
    </RelativeLayout> 
</RelativeLayout> 

ответ

2

сделать ваше мнение прокручивать по встраивать ваш взгляд изнутри Scrollview

<ScrollView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" > 
    ..... 
    add your layout 
    ...... 

</ScrollView> 

Если это не поможет сделать вам корневой макет в RelativeLayout и дизайн макета с RelativeLayout

+0

если я использую ScrollView, меняет весь дизайн макета ... Первоначально мой макет состоит из списка, а ниже списка есть поле комментариев (editt ext) .. если я поместил весь макет внутри прокрутки, тогда мой edittext переместится в верхнюю часть экрана, и я не могу просмотреть список. Я уже использую относительный макет. Я отправил в вопрос изначально мой макет –

+0

и что почему вы используете scrollView, вы не можете видеть все свое представление, когда клавиатура появляется, так что все, что вы можете сделать, это скрыть одно из видов прокруткой, и это логичный способ сделать это –

+0

, если я использую scrollview, я могу видеть только макет edittext ('commentlayout', как в xml, о котором идет речь) независимо от того, скрыта или показана программная клавиатура, и что также поверх экрана. Почему это происходит? –