一张图片讲述的不仅仅是冗长的演讲:
我想垂直对齐红色部分的中心和黑色部分的中间.我没有容器的约束(RelativeLayout,FrameLayout,LinearLayout oO).
我尝试了一个高度为0dp的视图与黑色视图的底部对齐,并将红色视图的alignBaseline对齐,但它不起作用…
谢谢你的帮助 !
解决方法:
Android现在支持CoordinatorLayout
的布局锚点:
<android.support.design.widget.CoordinatorLayout 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">
<View android:id="@+id/black_view"
android:layout_width="match_parent" android:layout_height="@dimen/black_height"/>
<View android:id="@+id/red_view"
android:layout_width="@dimen/red_width" android:layout_height="@dimen/red_height"
app:layout_anchor="@id/black_view" app:layout_anchorGravity="bottom|center"/>
</android.support.design.widget.CoordinatorLayout>
如果更改Java代码中视图的大小,则锚也将保持不变.