NSLocalizedString con variable rápida

Estoy tratando de localizar mi aplicación usando NSLocalizedString. Cuando importo el archivo XLIFF, la mayoría funciona como un amuleto pero algo no y algunas cadenas no están localizadas. Me he dado cuenta de que el problema es de NSLocalizedString que contiene algo variable como:

NSLocalizedString(" - \(count) Notifica", comment: "sottotitolo prescrizione per le notifiche al singolare") 

o

 NSLocalizedString("Notifica per \(medicina!) della prescrizione \(prescription!)\nMemo: \(memoTextView.text)", comment: "Messaggio della Local Notification") 

Quizás esta no sea la syntax correcta para este tipo de cosas. ¿Alguien me puede explicar cómo hacer eso rápidamente? Muchas gracias.

    Puede usar los parámetros de formato sprintf dentro de NSLocalizedString , para que su ejemplo se vea así:

     let myString = String(format: NSLocalizedString(" - %d Notifica", comment: "sottotitolo prescrizione per le notifiche al singolare"), count) 

    En la Sesión # 412 de la WWDC2014 “Localizando con Xcode 6”, la forma correcta de hacerlo en Swift es la siguiente:

     String.localizedStringWithFormat( NSLocalizedString(" - %d Notifica", comment: "sottotitolo prescrizione per le notifiche al singolare"), count) 

    He seguido el enfoque de crear extensión para String ya que tengo muchas cadenas para localizar.

     extension String { var localized: String { return NSLocalizedString(self, comment:"") } } 

    Para usarlo para la localización en el código do:

     self.descriptionView.text = "Description".localized 

    Para cadenas con variables dinámicas siga:

     self.entryTimeLabel.text = "\("Doors-open-at".localized) \(event.eventStartTime)" 

    Declare las cadenas en los archivos String para diferentes idiomas (ejemplo: árabe e inglés)

    enter image description here enter image description here

    ¡Hope estará ayudando!

    Creé una extension para String ya que tenía muchas strings para localized .

     extension String { var localized: String { return NSLocalizedString(self, tableName: nil, bundle: Bundle.main, value: "", comment: "") } } 

    Por ejemplo:

     let myValue = 10 let anotherValue = "another value" let localizedStr = "This string is localized: \(myValue) \(anotherValue)".localized print(localizedStr)