锚定FloatingActionButton

时间:2016-10-10 18:04:28

标签: android android-layout android-support-library android-coordinatorlayout floating-action-button

我正在使用Android支持FloatingActionButton(FAB)和CoordinatorLayout,我希望将锚点FAB设为CardView

这是我的代码:

<android.support.design.widget.CoordinatorLayout
... />

<LinearLayout
  ...>
     <android.support.v7.widget.CardView
        android:id="@+id/container"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
    ...
</LinearLayout>

<android.support.design.widget.FloatingActionButton
    android:id="@+id/fab"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="32dp"
    android:src="@android:drawable/ic_menu_send"
    app:layout_anchor="@id/container"
    app:layout_anchorGravity="bottom|end" />

</android.support.design.widget.CoordinatorLayout>

这样可行但有时FAB出现在页面的左上方,而不是锚定。

在这种情况下,当我按FAB时,它会恢复固定状态。 CardView CoordinatorLayout不是a = [a1,0,a2]; b = [1,-a3,-a4]; c = [0,2,3,5,1]; n1 = 0:length(a)-1; n2 = 0:length(b)-1; n3 = 0:length(c)-1; w = 0:pi/12:2*pi; num = a*exp(-1j*n1'*w); den = b*exp(-1j*n2'*w); H = num ./ den; X = c*exp(-1j*n3'*w); Y = X .* H; disp(Y); 的直接孩子,但我正在使用的[支持图书馆24.2.1]允许这样做。

可能是什么问题?

3 个答案:

答案 0 :(得分:3)

尝试删除以下内容:

app:layout_anchor="@id/container"
app:layout_anchorGravity="bottom|end"

并添加:

android:layout_gravity="bottom|end"

答案 1 :(得分:0)

您是否尝试将其锚定到线性布局而不是CoordinatorLayout?

<android.support.design.widget.CoordinatorLayout
... />

<LinearLayout
  ...>
     <android.support.v7.widget.CardView
        android:id="@+id/container"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
    ...
<android.support.design.widget.FloatingActionButton
    android:id="@+id/fab"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="32dp"
    android:src="@android:drawable/ic_menu_send"
    app:layout_anchor="@id/container"
    app:layout_anchorGravity="bottom|end" />
</LinearLayout>

   </android.support.design.widget.CoordinatorLayout>

答案 2 :(得分:0)

执行FAB的LinearLayout锚点。