我在CoordinateLayout视图中有两个Fab。当我展示Snackbar时,我希望两个Fab一起上升,但结果是只有一个Fab(较低的一个)响应并上升(见图)。我在这里想念什么?
致电小吃店
UIActivityViewController
XML
mSnackbar = Snackbar.make(getActivity().findViewById(R.id.coords_wrapper), "Loading", 1000000000);
答案 0 :(得分:17)
根据fab Behavior
,只有当它与小吃店相交时才转换。顶部按钮显然不会与小吃店碰撞,所以没有任何反应。
您可以尝试定义锚点:
<android.support.design.widget.FloatingActionButton
android:id="@+id/action_button_location"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_anchor="@id/action_button_filter"
app:layout_anchorGravity="top"
android:layout_gravity="top"
/>
<android.support.design.widget.FloatingActionButton
android:id="@+id/action_button_filter"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src ="@drawable/ic_add_black"
android:layout_gravity="right|bottom"
android:layout_margin="16dp"
/>
这将确定顶部fab(action_button_location
)和底部fab(action_button_filter
)之间的关系,以便第一个始终保持在另一个之上,如{{1 }和layout_anchorGravity
属性,都设置为layout_gravity
。您可能需要重新定义边距。