2015-07-03 46 views
5

Kiedy ustawić kolor do mojego Fab, wygląda tak:Pływające Przycisk Działanie Będąc kwadratowy

enter image description here

Mój układ xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
android:paddingBottom="@dimen/activity_vertical_margin" 
tools:context=".MainActivity$PlaceholderFragment"> 

<android.support.design.widget.FloatingActionButton 
    android:id="@+id/fab" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:src="@drawable/ic_add" 
    android:layout_marginRight="20dp" 
    app:fabSize="normal" 
    android:elevation="@dimen/fab_elevation" 
    android:background="#000000" 
    android:stateListAnimator="@animator/fab_anim" 
    android:layout_gravity="center_horizontal" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentEnd="true" /> 

Również kolor nie zmienia się. Czy ktoś może mi pomóc w zrozumieniu tego, co robię źle?

Próbowałem również z łączem @color, ale rozbił się, na tle ciągnięcia (ex. android:background="@drawable/fab_background") nic się nie dzieje.

Oto odkształcalne fab_background.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 

<item> 
    <ripple android:color="@color/fab_color_1_muted"> 
     <item> 
      <shape> 
       <solid android:color="@color/fab_color_1" /> 
      </shape> 
     </item> 
    </ripple> 
</item> 

+0

Dodaj 'app: borderWidth =" 0dp "' do layoutu. – Ziem

+0

możliwy duplikat [FAB - kwadrat na pre Lollipop i bez cienia na Lollipop] (http://stackoverflow.com/questions/30538604/fab-square-on-pre-lollipop-and-without-shadow-on-lollipop) – Ziem

+0

czy problem został rozwiązany? albo jakiego zachowania oczekujesz? – srinivasan

Odpowiedz

4

Zastosowanie

app:backgroundTint="@android:color/holo_green_dark" 

(na przykład) do ustawienia koloru Fab. Wynik poniżej. Taken from this -tested- code snippet.

enter image description here

także edit: "dziwny kolor zielony" powinno pochodzić od koloru akcent. Domyślnie jest to fabryka kolorów.

+0

Korzystanie z kodu, który jest połączony, sprawdziło się. Dzięki! Ten zielony kolor jest super cool. – SMKS

5

użyć tego kodu w xml

aplikacja: borderWidth = "0DP"

<android.support.design.widget.FloatingActionButton 
    android:id="@+id/fab" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:src="@drawable/ic_add" 
    android:layout_marginRight="20dp" 
    app:fabSize="normal" 
    android:elevation="@dimen/fab_elevation" 
    android:background="#000000" 
    app:borderWidth="0dp" 
    android:stateListAnimator="@animator/fab_anim" 
    android:layout_gravity="center_horizontal" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentEnd="true" /> 
+1

Zostało to naprawione w wersji 22.2.1, nie trzeba już tego robić. –

0

wystarczy dodać app:borderWidth="0dp"

0

prostu ustawienie aplikacji: borderWidth = "0DP" rozwiązać problem.