2010-09-24 8 views
5

Lokalizacja działa dla innych języków, z wyjątkiem angielskiego całkiem dobrze. Za każdym razem, gdy kompiluję swoją aplikację, widzę nazwę klucza zamiast zlokalizowanego ciągu. Przykład:Umiędzynarodowienie: zamiast zlokalizowanego ciągu wyświetlana jest tylko nazwa klucza w Symulatorze

NSLocalizedString(@"WelcomeKey", @"") 

W Localizable.strings mam odpowiedniego wpisu:

"WelcomeKey" = "Welcome"; 

w symulatorze zawsze dotrzesz nazwę klucza WelcomeKey zamiast Welcome. Na urządzeniu działa to idealnie. W symulatorze nie!

Dowiedziałem się również, że mój plik EN Localizable.strings był pełen "???????" symbolika. Więc wstawiłem stare wartości i zapisałem je w Xcode. Dodałem również wpis ręcznie, zamiast używać genstrings. W symulatorze działa również drugi język. Jedynie język angielski wydaje się stanowić problem. Być może usunąłem English.lproj i utworzyłem folder EN.lproj?

Próbowałem:

  1. Pusty Cache
  2. Clean wszystkie cele
  3. Delete "Wsparcie użytkownika/xxx/Library/Application/iPhone Simulator/Użytkownik" Folder
  4. Restart Mac
  5. Konwertuj na UTF-16
  6. Utworzono nowe Localizable.strings dla EN
  7. Del ete EN.lproj folder i pliki. Umiejscowiona lokalizacja jest zupełnie nowa.

Czego mi brakuje? Myślę, że symulator nienawidzi angielsku ...

Edit:

Więc starałem się skompilować aplikację na innym komputerze Mac. Działa tam bez problemów w symulatorze! Tak więc jest to ustawienie w Xcode lub problem z pamięcią podręczną.

Odpowiedz

2

Najpierw należy usunąć aplikację z symulatora iPhone/iPhone.

Wciśnij i przytrzymaj myszy na aplikacji w symulatorze aż zacznie wiercić. Następnie naciśnij X. Zostanie usunięty. Następnie naciśnij przycisk home, aby przyciski przestały się poruszać.

+0

No workie dla mnie – jjxtra

+1

Haha dziękuję, taka prosta rzecz, ale żaden z tutoriali o tym nie wspomina! – Denis

0

Upewnij się, że kodowanie Localizable.strings ma format UTF-16.

+0

Jak mogę dbać o format kodowania? Plik utworzyłem przy pomocy Plik> Nowy plik> W "Mac OS X" w "Inne" wybierz "Pusty plik". Jak zmienić kodowanie? – testing

+0

Zapisz jako ... w TextEdit. Możesz wybrać kodowanie dla plików tekstowych. – diederikh

+0

Dzięki, ale to nie rozwiązało problemu ... – testing

0

Również miałem Localizable.strings pełen bełkotu, pomógł zapisać plik jako UTF-8.

0

Jedyną opcją, która zadziałała, to Resetuj zawartość symulatora i Ustawienia w menu Symulator systemu iOS.

0

1 - Spróbuj usunąć i odbudować projekt.

LUB

2 - Przejdź do Localizable.strings inspektora plików i usuń zaznaczenie z członkostwa docelowej. Buduj za pomocą tych ustawień raz, a następnie usuń tę kompilację. Teraz wróć do menu inspektora plików Localizable.string i dodaj członkostwo docelowe.

LUB

3 - może mieć wiele localizable.strings (np sharekit) w projekcie. Spróbuj odznaczyć docelowe członkostwo dla innych localizable.strings.

Powiązane problemy