user3900157
user3900157

Reputation: 249

Localization not working - Swift

I have a problem with the localization of my app. I want to have french and english (default).

The localization seems to work with the Storyboard as text from there is translated to french (on simulator & iPhone in french). But the strings from Localizable.strings are not translated.

I checked the name of the file and it is correct "Localizable.strings". I validated the content of the files with "plutil -lint " and it was OK. Checking the target->build phases->copy bundle resources: the Localizable.strings is there.

In the code I am using:

NSLocalizedString("KEY", comment: "")

Checking the NSLocale of the simulator, it seems as the preferred language is french, so I do not understand why it is not working.

Any idea?

Thanks,

Henry

Upvotes: 2

Views: 8621

Answers (4)

Kudos
Kudos

Reputation: 1490

I have got same issue in Xcode 12.5

My Issues: I worked with English and Arabic text. English text was working fine but not able to extract Arabic Text. Have tried all solutions.

My Solution 1: Actually I had copied and pasted Arabic text from Google which caused issue in Xcode(Xcode was not able to read those texts.) So I copied Arabic texts first in Notes App and then copied to Xcode.

My Solution 2: I have tracked this issue after 4-5 afters. I checked the texts which are working fine in Arabic and checked the last line from where texts are not working. So i found that Arabic text was pasted improperly. So I cut that text and copied to Notes App and copied from Notes App and pasted back to code.

And Boom It worked.

Upvotes: 0

Green Y.
Green Y.

Reputation: 506

I faced same issue, but I found a mistake in Localizable.strings as user3900157. I missed semicolon at the end. After added semicolon to all sentences, it worked. Hope to help you.

Upvotes: 1

user3900157
user3900157

Reputation: 249

I fixed my issue. There was a mistake in my Localizable.strings. I had the following for one line:

"..."; = "...";

It would be good if there was a tool to validate this.

Thanks for the effort,

Bye

Upvotes: 1

D. Greg
D. Greg

Reputation: 1000

You might be missing some settings in your scheme.

This tutorial on YouTube really helped me localize my last app. It's under 8 minutes. Hope it helps.

Upvotes: 1

Related Questions