ios Swiftui图表本地化它不工作,我得到一个错误

plupiseo  于 2023-02-20  发布在  iOS
关注(0)|答案(1)|浏览(112)
Chart {
    ForEach(transactions) { item in
        if item.type == "Gider" || item.type == "Expense" {
                BarMark(
                    x: .value("Category",  item.category ?? ""),
                    y: .value("Amount", item.amount)
                )
            }
        
    }
}
.frame(width: 300, height: 300)
.padding()

事务类别应该用本地化翻译,但它没有。我不能使用LocalizeStringKeys(),它给了我那个错误-〉初始化器'init(x:y:width:height:stacking:)'要求'LocalizedStringKey'符合'Plottable'。
我使用核心数据。

@FetchRequest(sortDescriptors:[SortDescriptor(\.date, order:.reverse)])
private var transactions: FetchedResults<Transaction>

这是我的获取请求
我正在使用新的库图表,而不是SwiftUICharts。

nzrxty8p

nzrxty8p1#

可以将String与构造函数https://developer.apple.com/documentation/swift/string/init(localized:defaultvalue:table:bundle:locale:comment:)一起使用,其中将Transaction.category作为键

String(localized: "your string key", comment: "messaage")

UPD:
另外,确保你的字符串键中没有使用空格。下面是一个正确的键的例子:

/* 
  Localizable.strings
  SwiftUICharts Demo
*/
"Local_xAxisTitle" = "x Axis Title";

以及它在项目中的设置
https://github.com/willdale/SwiftUICharts-Demo/blob/253ed6dd61dde1034f72c07282e3966fb39a7cae/Shared/Views/ChartViews/Other/LocalizationDemoView.swift#L106

相关问题