FloatingActionButton的右边和底边约束使它看不见

时间:2017-12-18 20:58:08

标签: android android-layout android-xml

FloatingActionButton内有ConstraintLayout,如下所示:

<android.support.constraint.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

    <android.support.design.widget.FloatingActionButton
                android:id="@+id/fab_add_topic"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                app:srcCompat="@drawable/ic_add"
                app:layout_constraintRight_toLeftOf="parent"
                app:layout_constraintBottom_toTopOf="parent"
                android:foregroundGravity="right|bottom"
                android:layout_marginRight="@dimen/material_tooltip_margin_top"
                android:layout_marginBottom="@dimen/material_tooltip_margin_top"
                android:elevation="6dp"
                app:pressedTranslationZ="12dp"
                app:borderWidth="0dp"/>

</android.support.constraint.ConstraintLayout>

但是,当我使用Android数据绑定(在Kotlin类上)对Fragment上的布局进行充气时,它不会出现。

我尝试在ConstraintLayoutBottom Align Floating Action Button

内部实施此处提到的解决方案

如果我用Top和Left约束显示它,看起来很好。

我错过了什么?谢谢!

1 个答案:

答案 0 :(得分:15)

您的布局包含以下两个限制:

app:layout_constraintRight_toLeftOf="parent"
app:layout_constraintBottom_toTopOf="parent"

这将在功能上将FAB的右下角定位在屏幕的左上角。换句话说,您已将FAB限制在屏幕外。

很有可能你意味着你希望FAB的权利位于屏幕的右侧,而FAB的底部位于底部的屏幕。所以请改用:

app:layout_constraintRight_toRightOf="parent"
app:layout_constraintBottom_toBottomOf="parent"