材料设计是Google针对Android 5.0 Lollipop引入的跨平台和设备的视觉,动作和交互设计指南。
Android Material TextInputLayout 错误消息显示在 Material TextInputEditText 子项后面
我目前正在使用 Material 组件创建 Android UI。 在我的活动中,我使用 com.google.android.material.textfield.TextInputLayout 组件的错误功能。 问题是如果...
为什么样式不能在 Material3 (Android) 上正常工作?
我正在使用下面的代码向我的应用程序中的 RadioButtons 添加样式。应用程序基本主题的父主题是 Theme.Material3.DayNight.NoActionBar。 下面是代码: <p>我使用下面的代码向我的应用程序中的 RadioButtons 添加样式。该应用程序的基本主题的父主题是 <pre><code>Theme.Material3.DayNight.NoActionBar</code></pre>。</p> <p>以下是代码:</p> <pre><code><style name="RadioStyle"> <item name="android:drawableStart">@drawable/mydrawable</item> <item name="android:button">@drawable/anotherdrawable</item> </style> </code></pre> <p>由于某种原因,<pre><code>drawableStart</code></pre>工作正常,但按钮未显示。我可以手动将它们放入每个单选按钮中,但我想知道为什么它不能正常工作?</p> <p>此外,当我为按钮创建样式时,<pre><code>backgroundTint</code></pre>属性起作用,但<pre><code>android:textColor</code></pre>不起作用。与 <pre><code>Theme.AppCompat.DayNight.NoActionBar</code></pre> 配合使用效果很好,但与 <pre><code>Theme.Material3.DayNight.NoActionBar</code></pre> 配合使用则不然。我不得不使用 <pre><code>colorOnPrimary</code></pre> 属性来代替。如何理解在 <pre><code>Material3</code></pre> 库的情况下何时使用哪个属性?</p> </question> <answer tick="false" vote="0"> <p>我尝试模拟相同的结果,效果非常好。我从您的代码中可以理解的是,您可能在布局中使用了 <pre><code>android:theme</code></pre> 属性而不是 <pre><code>style</code></pre> 。如果是,则在布局中将 <pre><code>android:theme</code></pre> 替换为 <pre><code>style</code></pre>。</p> </answer> </body></html>
我正在为平板电脑制作一个Android应用程序。我使用与 Google 地图非常相似的设计,并且我使用 BottomNavigationView 进行纵向显示。 查看材料设计指南、底部导航...
我正在尝试以 formArray 作为输入数据源对角度材料表实现排序/过滤。 StackBlits 代码链接 数据源 = new MatTableDataSource([]); 我正在尝试以 formArray 作为输入数据源对角度材料表实现排序/过滤。 StackBlits 代码链接 dataSource = new MatTableDataSource([]); <table mat-table [dataSource]="formdataarray.controls" multiTemplateDataRows class="mat elevation-z8" matSort > <ng-container matColumnDef="{{column}}" *ngFor="let column of columnsToDisplay" > <th mat-header-cell *matHeaderCellDef mat-sort-header>{{column}}</th> <td mat-cell *matCellDef="let element"> {{ element.value[column] }} </td> </ng-container> 但是排序/过滤不起作用 您有两个选择: 使用普通数组formdataarray.controls作为dataSource并实现所有数据源方法,如过滤器,按您自己的排序。或者编写自定义 CDK DataSource 实现。另请参阅https://blog.angular-university.io/angular-material-data-table/ 使用MatTableDataSource并调整过滤和排序逻辑以支持AbstractControl对象。 html <table mat-table [dataSource]="dataSource" ts ngOnInit() { // fill FormArray ... this.dataSource.data = this.formdataarray.controls; this.dataSource.sortingDataAccessor = (data: AbstractControl, sortHeaderId: string) => { const value: any = data.value[sortHeaderId]; return typeof value === 'string' ? value.toLowerCase() : value; }; const filterPredicate = this.dataSource.filterPredicate; this.dataSource.filterPredicate = (data: AbstractControl, filter) => { return filterPredicate.call(this.dataSource, data.value, filter); } } 叉式Stackblitz 此外,如果您想向 FormArray 添加新项目,您也应该更新 this.dataSource.data。另请参阅 使用 FormArray 的 Angular Material 可编辑表 您还需要添加事件(matSortChange)=sortTable($event) 前往table标签 并在组件内添加sortTable逻辑 需要 ngAfterViewInit 才能工作 import { MatTableDataSource } from '@angular/material/table'; import { MatSort } from '@angular/material/sort'; ... @ViewChild(MatSort, {static: false}) sort: MatSort ... ngOnInit() { this.getYourData$.subscribe(d => this.data = new MatTableDataSource(d)); } ngAfterViewInit(): void { this.data.sortingDataAccessor = (data: AbstractControl, sortHeaderId: string) => { const value: any = data.value[sortHeaderId]; return typeof value === 'string' ? value.toLowerCase() : value; }; this.data.sort = this.sort; // where this.sort defined above. this.data.filterPredicate = (data: AbstractControl, filter) => { // return true or false on data. } } ... html <table matSort ... 为了寻找这个问题的答案,我也经历了一段漫长的旅程。就我而言,还涉及过滤和分页。我在这篇文章here中总结了我的经验。
我已经为 Jetpack Compose 主题设置了自定义颜色,但是当我调用 MaterialTheme.colorScheme.primary 时,它给了我默认的紫色。 val PrimaryLight = 颜色(0xFF1F6A4E) 私人价值
使用 angular2-mdl 的演示项目作为指导,我移植了选项卡组件并尝试按如下方式实现它: 从 '@angular/core' 导入 { Component } ; @成分({ 瑟...
Angular 18 中是否有可用材质 3 的组件 mixin 的列表?
我一直在尝试制作自定义 Material 3 主题,我在制作类和使用 mat.get-theme-color 方面取得了一些成功。然而,在示例中,使用分页器会对按钮产生连锁反应......
我使用以下代码在反应库中定义了可重用的“管理”按钮 管理按钮.tsx 接口 ManageButtonProps { 尺寸?: '小' | '中等' | '大的'; 名称?:字符串; dataCy?:字符串;
如何覆盖悬停时的InputDecorationTheme边框颜色?
我尝试使用 Material 主题生成器使用 #EC6164 作为源颜色来生成主题,但配色方案的 onError 属性的输出是 Color(0xffffffff)(white)。现在输出c...
Jetpack Compose 中的越野车颜色 (FAFAFA)
我在 Jetpack Compose 中有一张卡片,我将其容器颜色设置为 0xFFFAFAFA, (250, 250, 250)。 现在这个颜色是浅灰色的,但对我来说它是蓝色的。为什么会这样呢? 卡片( 修饰语=莫迪...
我想在Android中实现类似WhatsApp文件选择器的东西,但我真的不知道该怎么做。 WhatsApp Android 版本有一个很好的文件选择器波纹过渡,我想实现...
使用 <router-outlet> 延迟加载 mat-tab 内容时,在 mat-tab 内容中,路由组件会初始化两次(构造函数和 Init)
我创建了一个 mat 选项卡组,并使用 ng-for 使用路由器出口加载选项卡,当我添加新选项卡并导航 url 时,我的新路由组件被构造两次,之前的选项卡内容被重复...
使用 ShapeableImageView 时出现“无法膨胀 ColorStateList,将其留给框架”
我可以使用 ShapeableImageView 显示角图像,但是当我检查日志时,有错误,但不知道它是什么以及如何修复它。当我将视图更改为 ImageView 时,这...
我的第一个 flutter 应用程序中有一个材质设计的导航抽屉。这项工作很好,但我没有找到任何方法来关闭按后退按钮时的导航抽屉(如果在使用 WillPo 时打开)...
我感觉很愚蠢:当按钮被禁用时,我无法覆盖按钮的颜色。 代码看起来不错,我可以确保 _isDisabled 的逻辑是正确的。 按钮的样式是: 高B...
我感觉很愚蠢:当按钮被禁用时,我无法覆盖按钮的颜色。 代码看起来不错,我可以确保 _isDisabled 的逻辑是正确的。 按钮的样式是: 高B...
我正在尝试在我的应用程序中使用材质组件库中的 SearchBar 和 SearchView 。 这些是材质 3 的新组件。 实现 'com.google.android.material:material:1.12.0'...
在flutter中,是否可以为线性进度指示器实现类似谷歌的风格,如附图所示? 这是我的代码 线性进度指示器( borderRadius: const BorderRadius.only(topR...
如何才能让用户在打开日历时只能选择jetpack compose中的月份和年份。我在文档中没有找到这样的方法。 我尝试更改日期选择器
我开始研究Material 3支持,但找不到哪些Android版本支持Material 3设计库(MD3)的版本列表