标签: material-components-android

材料按钮图标

谷歌的新材料按钮非常好.根据文档,我们可以设置左侧默认显示的图标.有谁知道如何在右边设置它?我找不到任何关于此事的内容.

谢谢.

android android-button material-design material-components-android

14
推荐指数
3
解决办法
5659
查看次数

如何为材质按钮设置渐变背景?

我目前正在使用此代码,但背景没有改变。它仍然显示强调色作为背景。

<com.google.android.material.button.MaterialButton
    android:id="@+id/materialButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Hello"
    app:cornerRadius="32dp"
    android:background="@drawable/gradiant_blue"/>
Run Code Online (Sandbox Code Playgroud)

gradiant_blue.xml

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

   <gradient
       android:angle="-45"
       android:startColor="#2979FF"
       android:endColor="#7C4DFF"/>
</shape>
Run Code Online (Sandbox Code Playgroud)

我目前正在使用

材料组件版本:1.0.0-rc02

android android-button android-drawable material-components-android

14
推荐指数
2
解决办法
9592
查看次数

如何为 Material You 实现主题单色图标

我如何像其他谷歌应用程序一样实现单色图标,以便它与 Material You 选择的动态颜色相匹配?

android android-studio material-ui material-components-android

14
推荐指数
1
解决办法
6844
查看次数

如何从 MaterialComponents.DayNight 主题更改工具栏文本颜色?

我在我的应用程序中使用 MaterialComponents.DayNight 主题。在白天模式下,工具栏文本颜色为黑色。但是当我切换到夜间模式工具栏文本颜色保持黑色,所以它不再可见。

<style name="AppTheme" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
Run Code Online (Sandbox Code Playgroud)

我想在夜间模式下将工具栏文本颜色更改为白色。我怎样才能做到这一点?

android android-styles android-toolbar material-components material-components-android

13
推荐指数
4
解决办法
4653
查看次数

重新创建类似于 Android 12 设置的开关

Android 12 的设置开关现在看起来像这样,

Android 12的设置截图

它的代码在这里:

https://android.googlesource.com/platform/packages/apps/Settings/+/c4cc279a2a32e6b5dfac9af4a16a4d98def82a22/res/xml/configure_notification_settings.xml#133

但在我的应用程序中,更新后的材料库(1.5.0,材料3)看起来androidx.preference.SwitchPreferenceCompat既不像这样,androidx.preference.SwitchPreference

我的应用程序中的开关

我怎样才能至少在 Android 12 中拥有相同的外观(以及感觉、动画等)开关,或者 Android 是如何为自己做到这一点的?谢谢!

android material-design material-components-android

13
推荐指数
1
解决办法
2170
查看次数

Jetpack Compose 使用 Material 3 从 MaterialTheme 获取浅色模式与深色模式

借助 Jetpack Compose,使用 Material 2,您可以使用以下命令轻松查看主题是否处于浅色模式

val light = MaterialTheme.colors.isLight
Run Code Online (Sandbox Code Playgroud)

使用材质 3,我看不到这种能力。有没有办法用 Material 3 主题做到这一点?

android material-components-android android-jetpack-compose

13
推荐指数
2
解决办法
5792
查看次数

底部页边距顶部无法正常工作 - Android

我正在使用底页,如果我不添加保证金顶部,它工作得很好.

我想要在拉起时让底页填满屏幕,但它也会在Action Bar后面.
为了解决这个问题,我在底部页面上添加了相当于操作栏高度的页边距,它可以很好地工作,直到底栏返回到底部.

<RelativeLayout
    android:id="@+id/rl_bottom_sheet"
    android:layout_width="match_parent"
    android:layout_height="280dp"
    android:margin_top="60dp"
    app:behavior_peekHeight="80dp"
    app:behavior_hideable="false"
    app:layout_behavior="@string/bottom_sheet_behavior"
    android:background="@drawable/ic_camera">
Run Code Online (Sandbox Code Playgroud)

当底部纸张向下滑动时,边缘不再存在,并且屏幕上方的视图变得等于peekHeight + marginTop

在扩展之前

我该如何解决?

扩张一次后倒塌

在此输入图像描述

xml android material-design bottom-sheet material-components-android

12
推荐指数
1
解决办法
1530
查看次数

TabLayoutMediator 不保留 TabItem 属性

我使用带有预设 TabItems 的 ViewPager2 和 TabLayout 进行了简单设置:

...

        <com.google.android.material.tabs.TabLayout
            android:id="@+id/tabs"
            android:layout_width="0dp"
            android:layout_height="64dp"
            app:tabTextColor="@color/c0696D7"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toEndOf="@+id/palettesToggle"
            app:layout_constraintTop_toTopOf="parent"
            app:tabBackground="@color/cEEEEEE"
            app:tabIndicatorColor="@color/cFFFFFF"
            app:tabGravity="fill"
            app:tabUnboundedRipple="true"
            app:tabIconTint="@color/palettes_icon_tint"
            app:tabIndicatorGravity="stretch"
            app:tabMode="fixed">

            <com.google.android.material.tabs.TabItem android:icon="@drawable/palettes_layers" />

            <com.google.android.material.tabs.TabItem android:icon="@drawable/palettes_view" />

            <com.google.android.material.tabs.TabItem android:icon="@drawable/palettes_properties" />

            <com.google.android.material.tabs.TabItem android:icon="@drawable/palettes_blocks" />

            <com.google.android.material.tabs.TabItem android:icon="@drawable/palettes_blocks" />

            <com.google.android.material.tabs.TabItem android:icon="@drawable/palettes_settings" />

        </com.google.android.material.tabs.TabLayout>

        <androidx.viewpager2.widget.ViewPager2
            android:id="@+id/viewPager"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/tabs" />

...
Run Code Online (Sandbox Code Playgroud)

以及以下接线代码:

TabLayoutMediator(tabs, viewPager) { tab, position ->

        }.attach()
Run Code Online (Sandbox Code Playgroud)

以下设置忽略了TabItemicon 属性,我看到了空标签。似乎TabLayoutMediator完全覆盖了定义的 xml 属性,我必须将这些属性重置为TabConfigurationStrategy回调的一部分。我错过了什么吗?

android android-tablayout material-components-android android-viewpager2

12
推荐指数
1
解决办法
1676
查看次数

将 MaterialToggleButton 的选定颜色更改为纯色

无法将 MaterialToggleButton 的选定颜色设置为纯色,仅显示原色的透明阴影。

我尝试了下面的代码集,输出图像如下所示。

样式中的按钮主题

 <style name="ThemeButtonColorToggle" parent="AppTheme">
        <item name="colorPrimary">@color/colorOrange</item>
        <item name="colorButtonNormal">@color/colorOrange</item>
        <item name="android:backgroundTint">@color/black</item>
        <item name="strokeColor">@color/colorOrange</item>
        <item name="strokeWidth">@dimen/mtrl_btn_stroke_size</item>
        <item name="colorOnPrimary">@color/colorOrange</item>
        <item name="colorOnPrimarySurface">@color/colorOrange</item>
    </style>
Run Code Online (Sandbox Code Playgroud)

XML代码

    <com.google.android.material.button.MaterialButtonToggleGroup
        android:id="@+id/toggleGroup"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:checkedButton="@id/btnAndroid"
        app:layout_constraintTop_toBottomOf="@id/tvName"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:selectionRequired="true"
        app:singleSelection="true">

        <com.google.android.material.button.MaterialButton
            android:id="@+id/btnAndroid"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textIsSelectable="true"
            android:theme="@style/ThemeButtonColorToggle"
            android:textColor="@android:color/white"
            android:textColorHighlight="@color/colorOrange"
            android:text="Android" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/btniOS"
            android:layout_width="wrap_content"
            android:textIsSelectable="true"
            android:textColor="@android:color/white"
            android:theme="@style/ThemeButtonColorToggle"
            android:layout_height="wrap_content"
            android:text="iOS" />

    </com.google.android.material.button.MaterialButtonToggleGroup>
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我需要得到如下所示的纯色

在此输入图像描述

谁能帮我解决一下

android android-button android-togglebutton material-components-android

12
推荐指数
1
解决办法
5336
查看次数

MaterialDatePicker 仅选择 2 个日期之间的日期

如何向 MaterialDatePicker 添加约束以强制用户仅选择 2 个日期之间的日期?

val constraintBuilder = CalendarConstraints.Builder()
    val materialRangeBuilder = MaterialDatePicker.Builder.datePicker()
    materialRangeBuilder.setTitleText("Book Date")
    materialRangeBuilder.setCalendarConstraints(constraintBuilder.build())

    val materialRangePicker = materialRangeBuilder.build()

    materialRangePicker.addOnPositiveButtonClickListener {
        Timber.d("$it")
    }

    materialRangePicker.show(supportFragmentManager, "DATE_RANGE_PICKER")
Run Code Online (Sandbox Code Playgroud)

android android-datepicker kotlin material-components-android

12
推荐指数
2
解决办法
5854
查看次数