根据 SwiftUI 中的状态(正常、突出显示、禁用)更改按钮颜色?

Posted

技术标签:

【中文标题】根据 SwiftUI 中的状态(正常、突出显示、禁用)更改按钮颜色?【英文标题】:Button color to be changed depending on the state (normal, highlighted, disabled) in SwiftUI? 【发布时间】:2020-04-08 19:23:21 【问题描述】:

代替手动设置颜色,是否可以设置不同状态的颜色(正常、突出显示、禁用)?

var color: 颜色 退货条件? 。红蓝

所以我以这种方式设置了颜色更改,但是否可以根据状态进行更改? 不必手动检查状态和更改颜色? 像这样?

背景(颜色,用于:状态)

【问题讨论】:

【参考方案1】:

您可以通过@Environment(\.isEnabled) var isEnabled 获取.disabled(true) 的当前状态。您可以创建 ButtonStyle 来应用颜色。 我不知道突出显示的状态。

【讨论】:

以上是关于根据 SwiftUI 中的状态(正常、突出显示、禁用)更改按钮颜色?的主要内容,如果未能解决你的问题,请参考以下文章

从目标视图返回时,SwiftUI NavigationLink 显示为突出显示

表单/表格中的 SwiftUI 多个 NavigationLink - 条目保持突出显示

UIButton 的正常状态和突出显示状态之间的动画转换

UISlider 突出显示状态,拇指宽度与正常不同

Gridview 根据 Android 中的 SQLITE 状态高亮显示特定项目

在 SwiftUI 中突出显示语音话语