PercentFrameLayout: необходимо указать атрибут layout_width
Я пытаюсь использовать PercentFrameLayout, но получаю следующее сообщение об ошибке:
Binary XML file line #: You must supply a layout_width attribute.
Это xml, который я использую:
<android.support.percent.PercentFrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
app:layout_heightPercent="50%"
app:layout_marginLeftPercent="25%"
app:layout_marginTopPercent="25%"
app:layout_widthPercent="50%"/>
</android.support.percent.PercentFrameLayout>
Это ошибка или это моя ошибка?
1 ответ
Решение
layout_width
а также layout_height
атрибуты все еще требуются из-за спецификаций макета XML, но эффективно игнорируются в PercentFrameLayout
или же PercentRelativeLayout
,
Вам просто нужно установить значения 0dp
или же wrap_content
:
<ImageView
android:layout_height="0dp"
android:layout_width="0dp"
app:layout_heightPercent="50%"
app:layout_marginLeftPercent="25%"
app:layout_marginTopPercent="25%"
app:layout_widthPercent="50%" />
Это похоже на использование стандарта LinearLayout
с layout_weight
где вы должны указать layout_width
тоже.