Intereting Posts
Google Volley lib с Authenticated Appengine конечными точками? Обнаружение физического нажатия клавиши меню на Android Веб-представление без подходящей ошибки конфигурации EGL Используйте карту google на любых устройствах. (Без игры в Google) Что такое пространство имен приложений Android? Почему предварительный просмотр камеры Android по умолчанию более плавный, чем мой собственный предварительный просмотр камеры? Как получить доступ к новому API Gmail из моего приложения для Android? Совместим ли GPLv2 с магазином приложений iOS и Android Market? Студия Android не может разрешить com.google.android.gms.location.places.AutocompleteFilter Как переносить платные Android-приложения из одной учетной записи google в другую учетную запись google Недопустимый адрес кучи и фатальный сигнал 11 Запуск Android Game Development Как обращаться с: java.util.concurrent.TimeoutException: android.os.BinderProxy.finalize () вышло после 10 секундных ошибок? Как разбирать RSS-канал с помощью XmlPullParser? Java.lang.IllegalStateException: эта функция доступна только для экземпляров бэкэнд

Как избежать отображения перекрытия в относительной компоновке в android?

<ScrollView 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:orientation="vertical" > <RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:textSize="30sp" /> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/textView1" android:textSize="20sp" /> <TextView android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/textView2" android:textSize="20sp" /> <TextView android:id="@+id/textView4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/textView3" android:textSize="20sp" /> <TextView android:id="@+id/textView5" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/textView4" android:textSize="20sp" /> <TextView android:id="@+id/textView6" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/textView5" android:textSize="20sp" /> <TextView android:id="@+id/textView7" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/textView6" android:textSize="20sp" /> <TextView android:id="@+id/textView8" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/textView7" android:textSize="20sp" /> <TextView android:id="@+id/textView9" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/textView8" android:textSize="20sp" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/textView9" /> <TextView android:id="@+id/textView10" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="商店圖片:" android:textSize="15sp" android:layout_alignParentTop="true" android:layout_alignLeft="@id/imageView1" /> <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_below="@id/textView10" android:contentDescription="@string/top" /> </RelativeLayout> 

 Simple output: textview1 textview9 textview2 imageview1 . . . button1 

Вышеупомянутая компоновка – это страница, разделяющая горизонтально, для левой стороны – список текстовых просмотров и кнопка, для правой стороны – изображение. Проблема заключается в следующем: когда контент textview слишком длинный, изображение будет перекрывать его содержимое, кроме того, с помощью метода movetofront () есть ли способ (в xml) изменить размер ширины текстового представления, если он будет перекрываться с представлением изображения?

Solutions Collecting From Web of "Как избежать отображения перекрытия в относительной компоновке в android?"

Если вы используете такой дизайн, вы должны использовать линейный макет. И используйте Табличные строки в нем, чтобы отобразить этот вид.

А также использовать вес, чтобы ваш взгляд не перекрывался с другими видами. Попробуйте вот так:

 <ScrollView 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:orientation="vertical" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" > <TableRow android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:weightSum="10"> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:textSize="30sp" android:text="test" android:layout_weight="5" /> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/textView1" android:textSize="20sp" android:text="test" android:layout_weight="5"/> </TableRow> </LinearLayout> </ScrollView> 

Надеюсь, поможет!!

Используйте layout_toStartOf в первом элементе со вторым элементом + id в двойных кавычках

 <?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:orientation="horizontal" > <TextView android:id="@+id/email" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_centerVertical="true" android:layout_toStartOf="@+id/selectaccount" android:text="very long text which used to overlap over radio button" android:textAppearance="?android:attr/textAppearanceMedium" /> <RadioButton android:id="@+id/selectaccount" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_centerVertical="true" /> </RelativeLayout> 

Обратите внимание на этот аргумент в текстовом виде

 android:layout_toStartOf="@+id/selectaccount" 

XML читается сверху вниз

Так это то, как макет отображается в Android

  • Android: layout_toStartOf = " @ id / item означает, что элемент определен выше этой строки
  • Android: layout_toStartOf = " @ + id / item означает, что элемент появится позже где-то ниже этой строки

Совместите все текстовые изображения с левым окном просмотра изображения, как и все: android:layout_toLeftOf="@id/imageView1"

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:weightSum="1.0" > <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight=".5" android:orientation="vertical" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Large Text" /> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Medium Text" /> <TextView android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Medium Text" /> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight=".5" android:orientation="vertical" > <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_launcher" /> </LinearLayout> 

Вы можете преодолеть эту проблему, щелкнув «infer constraints», следуя рисунку, который показывает путь:

HowTo AndroidStudio

У меня была аналогичная проблема, и я попробовал почти все, что предлагалось здесь и в других подобных потоках.

Еще одна вещь, которая сделала это для меня, заключалась в том, чтобы добавить:

 android:layout_toStartOf="@+id/youroverlappeditem" 

Поэтому перекрывающийся элемент будет работать только с перекрываемым элементом.

layout_toLeftOf недостаточно

И, разумеется, ellipsize="end" был необходим.

Шахта была для recyclerview с относительной планировкой.