本地化 UIAlertController (IOS)

Localization UIAlertController (IOS)

我有 ActionSheet 的代码,因为我可以翻译单词 "Copy"、"Past"、"Send"、"Cancel".我怎样才能将它们翻译成其他语言?

我有一个文件Localized.strings可以这样使用吗?

actionSheetController.title = NSLocalizedString("Words", comment: "")

@IBAction func showActionSheetButtonAction(_ sender: Any) {
    let actionSheetController = UIAlertController(title: nil, message: nil, preferredStyle: .actionSheet)

    actionSheetController.addAction(
        UIAlertAction(title: "Copy", style: .default, handler: { [weak self] _ in
            guard let strongSelf = self else { return }

            UIPasteboard.general.string = strongSelf.displayResultLabel.text
            print ("Copy")

            let alert = UIAlertController(title: "Copied", message: "", preferredStyle: .alert)

            let when = DispatchTime.now() + 0.6
            DispatchQueue.main.asyncAfter(deadline: when){
                // your code with delay
                alert.dismiss(animated: true, completion: nil)
            }

            self?.present(alert, animated: true, completion:nil)
        })
    )

    actionSheetController.addAction(
        UIAlertAction(title: "Paste", style: .default, handler: { [weak self] _ in
            guard let strongSelf = self else { return }

            strongSelf.displayResultLabel.text = UIPasteboard.general.string
            print ("Past")

        })
    )

    actionSheetController.addAction(UIAlertAction(title: "Cancel", style: .cancel, handler: nil))

    present(actionSheetController, animated: true, completion: nil)
}

只要需要向用户显示本地化文本,就应该使用本地化字符串宏:

let actionSheetController = UIAlertController(title: NSLocalizedString("Words", comment: "Title for Alert Sheet"), message: nil, preferredStyle: .actionSheet)