标签: material-components-android

如何在 Android 中创建圆形 CardView?

我正在尝试创建一个圆形 CardView。但我不知道该怎么做。是否有任何属性可以让我获得 Circular CardView?

XML代码如下:

 <android.support.v7.widget.CardView
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:id="@+id/card_view_outer"
    android:layout_width="match_parent"
    android:layout_height="200dp"
    android:layout_gravity="center"
    card_view:cardBackgroundColor="@android:color/transparent"
    card_view:cardCornerRadius="0dp"
    card_view:cardElevation="3dp" >

   
</android.support.v7.widget.CardView>
Run Code Online (Sandbox Code Playgroud)

xml android android-cardview material-components-android

2
推荐指数
1
解决办法
3008
查看次数

描边属性不适用于 android studio 中的按钮

这是我的 Buttons.xml 文件

    <?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
    <corners android:radius="50dp"/>
    <gradient android:startColor="#8E8816"
        android:endColor="#145038"
        android:angle="270" />
    <stroke android:color="#680D0D" android:width="5dp"/>

</shape>
Run Code Online (Sandbox Code Playgroud)

这是我的 Activity_main.xml 我尝试将 android:background 更改为 android:src 但它也不起作用

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/teal_700"
    tools:context=".MainActivity">

    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/buttons"
        android:text="Button" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

只有角属性工作正常

不仅是中风,而且背景也没有改变,我没有明白我做错的地方......任何人都可以帮助我

这里将背景应用为 android:background="@drawable/buttons" Button_image后按钮的外观如何

android button android-button android-styles material-components-android

2
推荐指数
1
解决办法
1743
查看次数

如何禁用 Android MaterialDatePicker 中的未来日期?

我正在尝试使用 MaterialDatePicker 创建一个简单的 DatePicker,其中未来日期被禁用。我尝试了其他类似 StackOverflow 问题的答案,但没有成功。到目前为止,这是我的代码:-

val datePicker = MaterialDatePicker.Builder.datePicker().apply {
        setTitleText(getString(R.string.label_select_dob))
        setCalendarConstraints(limitRange().build())
    }.build()

 private fun limitRange(): CalendarConstraints.Builder {
    val calendarStart: Calendar = Calendar.getInstance()
    val calendarEnd: Calendar = Calendar.getInstance()
    val year = 1900
    val startMonth = 1
    val startDate = 1
    calendarStart.set(year, startMonth, startDate)
    calendarEnd.set(2021, 3, 27)
    val minDate: Long = calendarStart.timeInMillis
    val maxDate: Long = calendarEnd.timeInMillis

    val constraintsBuilder = CalendarConstraints.Builder()
    val validators: ArrayList<CalendarConstraints.DateValidator> = ArrayList()
    validators.add(DateValidatorPointForward.from(minDate))
    validators.add(DateValidatorPointBackward.before(maxDate))
    constraintsBuilder.setValidator(CompositeDateValidator.allOf(validators))

    return constraintsBuilder
}
Run Code Online (Sandbox Code Playgroud)

android android-datepicker kotlin material-components-android

2
推荐指数
1
解决办法
3979
查看次数

如何更改 Android 中的材质日期和时间选择器背景颜色?

如何更改Android 中的材质日期和时间选择器背景颜色?我发现许多解决方案默认日期和时间选择器不是材料设计

android android-datepicker material-design material-components-android materialdatepicker

2
推荐指数
1
解决办法
3495
查看次数

2
推荐指数
1
解决办法
688
查看次数

如何删除 Jetpack Compose 中底部工作表占用的空间

我有几个文本字段和按钮,用于打开底部抽屉。如何删除底部栏占用的空白空间我不想要空白空间,以便我的文本字段靠近我的按钮。我尝试使用修改器,但降低高度后,底部栏在屏幕中可见。是否可以删除多余的空间我的看法

\n

我的屏幕

\n
 Scaffold(scaffoldState = scaffoldState) {\n    Column(Modifier.padding(16.dp)) {\n\n        BottomDrawerSample()\n\n        OutlinedTextField(value = text,\n            onValueChange = { text = it },\n            label = { Text(text = "Title") },\n            singleLine = true)\n\n        OutlinedTextField(value = text,\n            onValueChange = { text = it },\n            label = { Text(text = "Brand") },\n            singleLine = true)\n     }\n   }\n
Run Code Online (Sandbox Code Playgroud)\n

底部抽屉

\n
@Composable\n@OptIn(ExperimentalMaterialApi::class)\nfun BottomDrawerSample() {\nval (gesturesEnabled, toggleGesturesEnabled) = remember { mutableStateOf(true) }\nval scope = rememberCoroutineScope()\nColumn {\n    Row(\n        modifier = Modifier\n            .fillMaxWidth()\n            .toggleable(\n                value = gesturesEnabled,\n                onValueChange …
Run Code Online (Sandbox Code Playgroud)

android material-components-android android-jetpack-compose

2
推荐指数
1
解决办法
1144
查看次数

在BottomNavigationView上为选定的图标设置动画

我正在寻找我目前在我的底形游览视图中使用的Vectordrawablawables,当为猫头鹰应用程序的本材料产品学习时选择了一个选项卡时。但是,与工具栏视图不同,当我使用 MenuItem.getIcon() 获取图标时,将其转换为 AnimatedVectorDrawable 并调用 animate() 方法,没有动画。

我想知道我是否可以做些什么来实现这一点,这是否可能包含在稳定的 Material Components 库中,或者我是否最好创建一个扩展 BottomNavigationView 类的自定义视图。

android material-design bottomnavigationview material-components material-components-android

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

如何使com.google.android.material.button.MaterialButton文本小写

如何使文本小写MaterialButton呢?textAllCaps="false"对我不起作用。我在用com.google.android.material:material:1.0.0-alpha3

<com.google.android.material.button.MaterialButton
    android:id="@+id/material_button"
    style="@style/Widget.MaterialComponents.Button"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/button_label_enabled"/>
Run Code Online (Sandbox Code Playgroud)

android material-components-android

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

新的TabLayout材质组件如何设置Tab背景色

我正在使用我想要实现此设计 的新材料组件在此处输入图片说明

我为旧的 TabLayout 找到了这些答案

如何更改 TabLayout 所选选项卡的图标颜色?

在 TabLayout(Android 设计支持库)中更改 Tab 的背景颜色不会占用整个 Tab 空间

我认为新的 TabLayout 有一种更简单的方法来设置选项卡的背景并处理文本和图标颜色的变化

android material-design material-components-android

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

单选可检查卡片视图

我已经按照https://medium.com/@AlbinPoignot/checkable-cardview-in-all-android-versions-7124ca6df1ab实现了一个可检查的 CardView

但是,我需要让用户只选择一个选项。澄清一下,如果一个已经被选中,并且用户选择了另一个,我需要取消选择上一个选项。

此外,我需要在返回选定的 CardView 时保持选中状态。

有人可以帮我完成这两项任务吗?下面是我的实现:


    public class CheckableCardView extends CardView implements Checkable {

        private static final int[] CHECKED_STATE_SET = {
                android.R.attr.state_checked
        };

        private boolean isChecked;
        private TextView itemText;

        public CheckableCardView(Context context) {
            super(context);
            init(null);
        }

        public CheckableCardView(Context context, AttributeSet attrs) {
            super(context, attrs);
            init(attrs);
        }

        public CheckableCardView(Context context, AttributeSet attrs, int defStyleAttr) {
            super(context, attrs, defStyleAttr);
            init(attrs);
        }

        private void init(AttributeSet attrs) {
            LayoutInflater.from(getContext()).inflate(R.layout.checkable_card_view, this, true);

            setClickable(true);
            setChecked(false);

            setCardBackgroundColor(ContextCompat.getColorStateList(getContext(), R.color.selector_card_view_background));

            if (attrs != null) {
                TypedArray …
Run Code Online (Sandbox Code Playgroud)

android material-design android-cardview material-components material-components-android

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