2015-07-30 5 views
0

Когда я набираю длинный текст в последнем EditText (opedt), он перекрывает кнопку внизу. Текст находится поверх кнопки. Я хочу, чтобы текст остановился только до нажатия кнопки и свитков. Как это сделать?Предотвращение элементов компоновки от перекрытия

вот мой файл макета:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" 
    android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    tools:context="mpack.gt.UnityActivity"> 

    <Button 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="@string/finirbtn" 
     android:background="#008000" 
     android:id="@+id/validerreponsebtn" 
     android:layout_alignParentBottom="true" 
     /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/opmtxt" 
     android:textSize="20sp" 
     android:textStyle="bold" 
     android:id="@+id/opmtxt" 
     android:layout_alignParentTop="true" 
     /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/opdesc" 
     android:layout_below="@+id/opmtxt" 
     /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/repopmstxt" 
     android:textSize="20sp" 
     android:textStyle="bold" 
     android:id="@+id/repopmtxt" 
     android:layout_below="@+id/opdesc" 
     /> 
    <EditText 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/opreponseedt" 
     android:layout_below="@+id/repopmtxt" 
     android:hint="@string/hintreponse" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" /> 

</RelativeLayout> 
+0

Использование прокрутки. См. Http://stackoverflow.com/questions/9058209/in-android-how-to-get-a-scrollpane – user3653796

ответ

0

Если вы хотите, чтобы предотвратить элементы из перекрывающихся вы не должны использовать RelativeLayout в первую очередь, но выбрать другие макеты, которые не позволяют детям Просмотров перекрываться. RelativeLayout позволяет сделать это, так whenver вид текста растет, он не будет расширяться, как есть LinearLayout будет делать (если ребенок не нуждается больше пространства, что весь макет принимает)

+0

Как мне упорядочить мои элементы? Я хочу, чтобы кнопка была внизу, а остальные наверху. –

+0

Возможно, вы захотите обернуть некоторые элементы в дополнительные макеты, а затем сгруппировать их вместе. Нет никаких ограничений, и вы можете безопасно разместить два вертикальных линейных макета в одном горизонтальном расположении и т. Д. Мой совет - заставить его выглядеть и работать по своему усмотрению. Затем оптимизируйте overdraws и т. Д. Так что если обертывание некоторых элементов в другом отдельном макете поможет - сделайте это –

0

Одним из способов является установить Button ниже последнего EditText вместо выравнивания ко дну.

<Button 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="@string/finirbtn" 
     android:background="#008000" 
     android:id="@+id/opreponseedt" 
     android:layout_below="@+id/opdesc"/> 
+0

Я хочу, чтобы кнопка была внизу –

+0

Она будет внизу, только не донизу. В противном случае вы можете использовать LinearLayout вместо RelativeLayout. – Sharj

+0

отправьте xml –

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