簡體   English   中英

如何在 Swift 中為 macOS Trash/Bin 正確本地化顯示名稱?

[英]How to get correctly localised display name for macOS Trash/Bin in Swift?

我正在嘗試讓 Swift 正確返回垃圾箱的本地名稱(例如,從 macOS 10.14/10.15 開始,垃圾箱現在在許多國家都稱為 Bin。)

盡管我在“垃圾箱”的地方,但我的嘗試只是返回“垃圾”:)

let trashUrl = try! FileManager.default.url(for: .trashDirectory, in: .allDomainsMask, appropriateFor: nil, create: false)
let trashName = FileManager.default.displayName(atPath: trashUrl.path)

如果您已將本地語言添加為應用程序的本地化之一,您的代碼將起作用。 例如,我的 macOS 系統語言是日語,如果我在項目設置中將日語添加到本地化中:

在此處輸入圖像描述

從您的代碼中打印trashName將給出“ゴミ箱”。

本質上, displayName(for:)是在您應用的當前本地化中獲取本地化名稱。 如果您的應用程序無法本地化到您系統的區域設置,它將保持為英語,對嗎? 這就是為什么它會顯示“垃圾箱”,除非您使您的應用程序能夠本地化到您感興趣的任何語言環境。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM