我试图使用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>
这是虫子还是我的错?
最佳答案
由于xml布局规范的原因,layout_width
和layout_height
属性仍然是必需的,但是在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
。