2017-01-05 14 views
1

Я столкнулся с раздражающей проблемой в течение нескольких часов.Android adjustResize с фиксированными полями

У меня есть относительный макет с логотипом, который имеет marginTop и кнопку, выровненную снизу, которая имеет marginBottom. Между этими двумя представлениями есть также некоторые другие взгляды, сосредоточенные.

enter image description here

Проблема возникает при открытии клавиатуры. То, что я хочу, это поднять все. Что происходит, так это то, что кнопка поднимается, логотип остается в фиксированном положении, а другие виды сжимаются посередине (на небольших устройствах они даже исчезают).

enter image description here

Я знаю, что проблема может быть решена, если все остальные виды были бы по отношению друг к другу, начиная от логотипа или кнопки (никогда оба!). Но в этом случае логотип и кнопка не будут находиться в желаемых местах.

Любые идеи приветствуются.

+0

попробовать положить его в Scrollview –

+0

Put другие мнения вещи в RelativeLayout. Он может решить вашу проблему – Moses

+0

@KoenVanLooveren Я уже положил его в scrollview – Teodora

ответ

0

Я попробовал то, что вы discribe здесь:

не забывайте FILLVIEWPORT = верно. для Scrollview

Это то, что я понял, и он отлично работает:

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fillViewport="true"> 

    <RelativeLayout 
     android:id="@+id/activity_main" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:paddingBottom="@dimen/activity_vertical_margin" 
     android:paddingLeft="@dimen/activity_horizontal_margin" 
     android:paddingRight="@dimen/activity_horizontal_margin" 
     android:paddingTop="@dimen/activity_vertical_margin" 
     tools:context="be.vanlooverenkoen.testing.MainActivity"> 

     <ImageView 
      android:id="@+id/imageView" 
      android:layout_width="wrap_content" 
      android:layout_height="150dp" 
      android:layout_alignParentTop="true" 
      android:layout_centerHorizontal="true" 
      android:scaleType="fitXY" 
      app:srcCompat="@mipmap/ic_launcher" /> 

     <EditText 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_above="@+id/button" 
      android:layout_below="@+id/imageView" 
      android:background="@color/colorAccent" /> 

     <Button 
      android:id="@+id/button" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_alignParentBottom="true" 
      android:text="Button" /> 
    </RelativeLayout> 
</ScrollView> 
+0

Да, это работает, но edittext сжат. В моем случае, поскольку у меня есть android: layout_marginTop = "50dp" для логотипа и android: layout_marginBottom = "100dp" для кнопки, размер текста редактирования еще меньше (иногда даже ушел). – Teodora

 Смежные вопросы

  • Нет связанных вопросов^_^