浮动操作按钮始终显示在顶部

9

我正在尝试在浮动操作按钮的顶部显示TextView。在FrameLayout中,我有1个FAB和1个TextView:

<FrameLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom|start"
    android:padding="@dimen/fab_margin">

    <android.support.design.widget.FloatingActionButton
        android:id="@+id/fabAddSeller"
        android:layout_width="70dp"
        android:layout_height="70dp"
        app:backgroundTint="#3780f4"
        android:stateListAnimator="@null"/>

    <TextView
        android:id="@+id/tvSellRecordCount"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/sell_record_counter"
        android:layout_gravity="top|end"
        android:text="12"
        android:textColor="#FFFFFF"
        android:textSize="10sp" />

</FrameLayout>

根据这个答案,我已经添加了

android:stateListAnimator="@null"

到FAB中,但没有任何变化。我在FAB后面放置了TextView,但也没有效果。

enter image description here

如何在 FloatingActionButton 上方显示另一个视图?

请查看此链接:https://dev59.com/L2Af5IYBdhLWcg3wnDwI - Sreehari
1
高程是一个选项吗?我不确定你的minSdk是多少。 - guipivoto
1
使用 RelativeLayout!尝试设置 TextView 属性 **android:layout_above="@id/fabAddSeller"**。 - Viveka Patel
@GuilhermeP,是的,我给我的TextView设置了elevation,现在它在顶部。顺便说一下,minSdk = 14。 - Joe Rakhimov
@GuilhermeP,你能把这个发表为答案吗?我会接受它 - 其他遇到这个问题的人将知道如何解决它。 - Joe Rakhimov
显示剩余2条评论
2个回答

14
在Android Studio中,我可以通过给文本视图添加高度属性来解决问题:
android:elevation="6dp"

看起来FAB有5dp的高度。

但是,我不确定这是否完全适用于您,因为高度仅适用于API>=21。

尝试在真实设备上进行一些测试...

也许,在真实设备/模拟器中,android:stateListAnimator="@null"就足够了。

更新

在添加app:elevation后,此修复程序也开始适用于旧的API。

app:elevation="6dp"
android:elevation="6dp"

在这种情况下,如果我长按FAB,它会在我的圆形视图下升起。 - Evgeniy Pavlov
需要为此情况设置12dp+的高度。 - Evgeniy Pavlov

1
将 FrameLayout 替换为 RelativeLayout 并添加。
 <android.support.design.widget.FloatingActionButton
        ...
        android:layout_below="@+id/tvSellRecordCount"
        ...
        />

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接