You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SwiftUI中分段Picker的Text视图无法显示SF Symbol图标问题求助

SwiftUI中分段Picker的Text视图无法显示SF Symbol图标问题求助

各位好,我在开发SwiftUI应用时碰到了个小难题,折腾好久没搞定,想请大伙帮忙看看~

我想在分段样式的Picker选项里,同时显示SF Symbol图标和本地化文字,于是写了下面的实现代码:

首先是视图部分:

@State var selectedType: BiblePlanOffsetType = .verse
@State var types = [BiblePlanOffsetType.verse, .chapter]

Picker("", selection: $selectedType) {
    ForEach(types, id: \.self) { elem in
        Text(elem.title)
    }
}
.pickerStyle(.segmented)

然后是对应的枚举定义:

enum BiblePlanOffsetType: Int16, CaseIterable {
    case verse = 0
    case chapter = 1
    
    var title: String {
        switch self {
        case .verse:
            return "\(Image(systemName: "quote.opening")) " + "verses".localized
        case .chapter:
            return "\(Image(systemName: "text.quote")) " + "chapters".localized
        }
    }
}

可实际运行后,Picker的分段选项里只有“verses”和“chapters”的文字,对应的SF Symbol图标完全没显示出来。我之前看到过相关内容说这种把Image转成字符串拼接的方式是可行的,但实际跑起来就是没效果。

有没有大佬能帮忙分析下图标不显示的原因,或者给个能让图标正常出现在分段Picker里的解决方案呀?

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.07 09:08:02