有谁知道这个截图
正确反映了这种布局吗?
<android.support.design.widget.CoordinatorLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/text_view1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:background="#FFFFFF80"
style="@android:style/TextAppearance.DeviceDefault.Large"
android:text="@string/text_1"/>
<TextView
android:id="@+id/text_view2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
app:layout_anchor="@id/text_view1"
app:layout_anchorGravity="bottom|right"
android:background="#FFFF8080"
style="@android:style/TextAppearance.DeviceDefault.Large"
android:text="@string/text_2"/>
<TextView
android:id="@+id/text_view3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
app:layout_anchor="@id/text_view2"
app:layout_anchorGravity="bottom|right"
android:background="#FF8080FF"
style="@android:style/TextAppearance.DeviceDefault.Large"
android:text="@string/text_3"/>
</android.support.design.widget.CoordinatorLayout>
我没想到文本视图有任何重叠,但可能是我的期望不正确?
答案 0 :(得分:11)
正如@ana 01在评论中提到的那样,除了android:layout_gravity="right"
之外,您还应添加app:layout_anchorGravity="right"
。默认情况下,app:layout_anchorGravity
的作用类似于从属视图通过锚点视图的中心与锚点的视图对齐。
因此,如果您想将一个视图相对于其他视图对齐,则应设置从属视图的边缘或重力,该视图将用于通过android:layout_gravity
属性进行对齐。