Android меняет цвет кнопки плавающего действия

Хороший логический вопрос. Пожалуйста, проверьте запрос ниже (бит длинный, но не смог остановить мою отправку моей небольшой логики:)).

CREATE TABLE #SampleTable ([ParentID] int, [ChildName] varchar(6));

INSERT INTO #SampleTable VALUES (1, 'Max')
INSERT INTO #SampleTable VALUES (1, 'Jessie')
INSERT INTO #SampleTable VALUES (2, 'Steven')
INSERT INTO #SampleTable VALUES (2, 'Lucy')
INSERT INTO #SampleTable VALUES (2, 'Jake')
INSERT INTO #SampleTable VALUES (3, 'Mark')

select * From #SampleTable

;WITH T(xParentID, xChildName, xChildNameResult, xC1, xC2)AS
(
    SELECT * FROM(
    SELECT 
        ParentID ,
        ChildName, 
        CAST(ChildName AS NVARCHAR(MAX)) AS ChildNameResult,
        ROW_NUMBER() OVER (PARTITION BY [ParentID] ORDER BY ChildName) C1,
        COUNT(*) OVER (PARTITION BY [ParentID]) C2
    FROM #SampleTable)x WHERE x.C1=1

    UNION ALL

    SELECT ParentID, ChildName,
    CAST(T.xChildNameResult+(CASE WHEN C1=1 THEN '' WHEN C1=C2 THEN ' and ' ELSE ', ' END)+ChildName AS NVARCHAR(MAX)), C1, C2 
    FROM
    (
        SELECT 
        ParentID , 
            ChildName, 
            ROW_NUMBER() OVER (PARTITION BY ParentID order by ChildName) C1,
            COUNT(*) OVER (PARTITION BY ParentID) C2
        FROM #SampleTable
    )y INNER JOIN T ON y.ParentID=T.xParentID and y.c1=T.xC1+1
)SELECT xParentID, xChildNameResult FROM T where xC1=xC2
OPTION (MAXRECURSION 0);
469
задан Marko 4 February 2016 в 07:45
поделиться

2 ответа

С Материал Тема и материальные компоненты FloatingActionButton по умолчанию это берет набор цветов в styles.xml атрибут colorSecondary .

  • можно использовать app:backgroundTint атрибут в xml:
<com.google.android.material.floatingactionbutton.FloatingActionButton
       ...
       app:backgroundTint=".."
       app:srcCompat="@drawable/ic_plus_24"/>
  • можно использовать fab.setBackgroundTintList();

  • , можно настроить стиль с помощью <item name="backgroundTint"> атрибут

  <!--<item name="floatingActionButtonStyle">@style/Widget.MaterialComponents.FloatingActionButton</item> -->
  <style name="MyFloatingActionButton" parent="@style/Widget.MaterialComponents.FloatingActionButton">
    <item name="backgroundTint">#00f</item>
  </style>
  • запуск с версии 1.1.0 материальных компонентов, можно использовать новое materialThemeOverlay атрибут для переопределения цветов по умолчанию только для некоторых компонентов:
  <style name="MyFloatingActionButton" parent="@style/Widget.MaterialComponents.FloatingActionButton">
    <item name="materialThemeOverlay">@style/MyFabOverlay</item>
  </style>

  <style name="MyFabOverlay">
    <item name="colorSecondary">@color/custom2</item>
  </style>
0
ответ дан Gabriele Mariotti 29 August 2019 в 18:22
поделиться

используйте

app:backgroundTint = "цветной/оранжевый" в


<com.google.android.material.floatingactionbutton.FloatingActionButton
        android:id="@+id/id_share_btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/share"
        app:backgroundTint="@color/orange"
        app:fabSize="mini"
        app:layout_anchorGravity="end|bottom|center" />



</androidx.coordinatorlayout.widget.CoordinatorLayout>

0
ответ дан 22 November 2019 в 22:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: