Were exactly are you stuck with this.
I don’t use button widgets very often, but from what I remember they are something like this:
local button = widget.newButton { width = 100, height = 50, defaultFile = "buttonDefault.png", overFile = "buttonOver.png", label = "my button text", onEvent = myButtonEvent }
Instead of providing a literal string, just do something like this:
local buttonStrings = { en = "my button text", fr = "mon texte du bouton", it = "il mio testo del pulsante", de = "meine Button-Text", es = "mi texto del botón", ko = "내 단추 텍스트", jp = "私のボタンのテキスト", } --get the user's 2 letter language code local usersLanguage = system.getPreference("ui", "language") --make it's lower case usersLanguage = string.lower( usersLanguage ) --just use first 2 letters, in case they have a regional dialect if string.len(usersLanguage) \> 2 then usersLanguage = string.sub(usersLanguage, 1, 2) end local button = widget.newButton { width = 100, height = 50, defaultFile = "buttonDefault.png", overFile = "buttonOver.png", label = buttonStrings[usersLanguage], onEvent = myButtonEvent }
The label reads from a table of potential phrases, and picks the correct one based on the user’s language.
Since I don’t always use regional dialects (e.g. en-gb, en-us), I just use the first 2 characters in the language code.