Skip to content

Instantly share code, notes, and snippets.

@anupamchugh
Last active November 17, 2019 14:34
Show Gist options
  • Save anupamchugh/671bc92c1724acb3465d2e325d65645e to your computer and use it in GitHub Desktop.
Save anupamchugh/671bc92c1724acb3465d2e325d65645e to your computer and use it in GitHub Desktop.
import SwiftUI
import FirebaseMLNLTranslate
struct ContentView: View {
@State var name: String = ""
@State var languageTranslate: String = ""
var body: some View {
VStack(alignment: .center, spacing: 20){
TextField("Enter some text", text: $name)
.font(.system(size: 20))
.multilineTextAlignment(.center)
Text(languageTranslate)
Button(action: translate, label: {
Text("Language Translate").foregroundColor(.blue)
})
}
}
func translate(){
let options = TranslatorOptions(sourceLanguage: .zh, targetLanguage: .en)
let translator = NaturalLanguage.naturalLanguage().translator(options: options)
let conditions = ModelDownloadConditions(
allowsCellularAccess: true,
allowsBackgroundDownloading: true
)
translator.downloadModelIfNeeded(with: conditions) { error in
guard error == nil else { return }
translator.translate(self.name){
(translatedText, error) in
guard error == nil,
let translatedText = translatedText
else {return }
self.languageTranslate = translatedText
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment