2016-02-25 26 views
6

Tôi đang cố hiển thị chế độ xem văn bản ở trên cùng của nút Hành động nổi. Bên FrameLayout, tôi có 1 FAB và 1 TextView:Nút tác vụ nổi luôn hiển thị trên đầu trang

<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> 

Theo answer này, tôi đã thêm

android: stateListAnimator = "@ null"

để FAB - không Sự khác biệt. Tôi đã đặt TextView sau FAB - không có hiệu lực.

enter image description here

Làm thế nào để hiển thị một cái nhìn trên đầu trang của FloatingActionButton?

+0

séc http này: //stackoverflow.com/questions/24459352/how-can-i-add-the-new-floating-actio n-button-between-two-widgets-layouts – Stallion

+1

độ cao là một lựa chọn? Tôi không chắc đó là minSdk của bạn – W0rmH0le

+1

Sử dụng RelativeLayout !! cố gắng đặt thuộc tính TextView ** android: layout_above = "@ id/fabAddSeller" ** –

Trả lời

9

Trong Android Studio, tôi có thể sửa chữa sau khi thêm độ cao cho xem văn bản:

android:elevation="6dp" 

Dường như FAB có 5dp độ cao.

Tuy nhiên, tôi không chắc liệu điều này có hoàn toàn phù hợp với bạn vì độ cao có sẵn cho API> = 21 hay không.

Cố gắng làm một số xét nghiệm trong các thiết bị thực ...

Có lẽ, android:stateListAnimator="@null" là đủ trong các thiết bị thực/giả lập.

CẬP NHẬT

Sau khi thêm app:elevation, sửa chữa này bắt đầu làm việc với các API cũ cũng

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

Thay FrameLayout với RelativeLayout và thêm

<android.support.design.widget.FloatingActionButton 
     ... 
     android:layout_below="@+id/tvSellRecordCount" 
     ... 
     /> 
Các vấn đề liên quan