当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Swift Optional badge(_:)用法及代码示例


用法一

实例方法

badge(_:)

从本地化的字符串键生成视图的标记。

声明

func badge(_ key: LocalizedStringKey?) -> some View

参数

key

显示为徽章的可选字符串键。将值设置为 nil 以隐藏徽章。

详述

使用徽章来传达有关视图的可选补充信息。使徽章的内容尽可能简短。徽章仅出现在列表行和选项卡栏中。

此修饰符代表您创建 Text 视图,并将本地化键视为类似于 Text/init(_:tableName:bundle:comment:) 。有关本地化字符串的更多信息,请参阅Text。以下示例显示了一个列表,其中一个行带有 “Default” 标记。


NavigationView {
    List(servers) { server in
        Text(server.name)
            .badge(server.isDefault ? "Default" : nil)
    }
    .navigationTitle("Servers")
}

可用版本

iOS 15.0+, iPadOS 15.0+, macOS 12.0+, Mac Catalyst 15.0+

用法二

实例方法

badge(_:)

从文本视图生成视图的标记。

声明

func badge(_ label: Text?) -> some View

参数

label

一个可选的 Text 视图,显示为徽章。将值设置为 nil 以隐藏徽章。

详述

使用徽章来传达有关视图的可选补充信息。使徽章的内容尽可能简短。徽章仅出现在列表行和选项卡栏中。

当您想要设置 Text 视图的样式以用作徽章时,请使用此初始化程序。以下示例使用 Text/monospacedDigit()Text/foregroundColor(_:)Text/bold() 修饰符自定义徽章。


var body: some View {
    let badgeView = Text("\(recentItems.count)")
        .monospacedDigit()
        .foregroundColor(.red)
        .bold()


    List {
        Text("Recents")
            .badge(badgeView)
        Text("Favorites")
    }
}

当徽章出现在 TabView 中时,设置文本视图的样式无效。

可用版本

iOS 15.0+, iPadOS 15.0+, macOS 12.0+, Mac Catalyst 15.0+

用法三

实例方法

badge(_:)

从整数值生成视图的标记。

声明

func badge(_ count: Int) -> some View

参数

count

要在徽章中显示的整数值。将该值设置为零以隐藏徽章。

详述

使用徽章来传达有关视图的可选补充信息。使徽章的内容尽可能简短。徽章仅出现在列表行和选项卡栏中。

以下示例显示了一个 List,其值为 recentItems.count,由其中一行上的标记表示:


List {
    Text("Recents")
        .badge(recentItems.count)
    Text("Favorites")
}

可用版本

iOS 15.0+, iPadOS 15.0+, macOS 12.0+, Mac Catalyst 15.0+

用法四

实例方法

badge(_:)

从字符串生成视图的徽章。

声明

func badge<S>(_ label: S?) -> some View where S : StringProtocol

参数

label

要显示为徽章的可选字符串。将值设置为 nil 以隐藏徽章。

详述

使用徽章来传达有关视图的可选补充信息。使徽章的内容尽可能简短。徽章仅出现在列表行和选项卡栏中。

此修饰符代表您创建 Text 视图,并将本地化键视为类似于 Text/init(_:)-9d1g4 。以下示例显示了一个列表,其中一个行带有 “Default” 标记。


NavigationView {
    List(servers) { server in
        Text(server.name)
            .badge(server.defaultString())
    }
    .navigationTitle("Servers")
}

可用版本

iOS 15.0+, iPadOS 15.0+, macOS 12.0+, Mac Catalyst 15.0+

相关用法


注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 Optional badge(_:)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。