2015-07-02 2 views
0

Я ищу информацию, которую я не нашел в Интернете. Я хотел бы знать, в какой версии iOS появилась NSLocalizedString? (возможно, это здесь, начиная с первой версии iOS?)Локализация с помощью NSLocalizedString или .xib

Я также хотел бы знать, в каком случае, используя локализацию в .xib и в этом случае используя NSLocalizedString?

Я задаю этот вопрос, потому что я работаю над проектом iOS, используя локализацию в файлах .xib и NSLocalizedString, и я не знаю, почему эти два метода используются ... (это старый проект , поэтому я задаю первый вопрос ^^)

Последний вопрос, для нового проекта, какой из этих двух методов будет вашим предпочтительным?

Извините за все эти вопросы и спасибо за ответ! =)

ответ

0

Локализация с использованием xib-файлов используется, когда мы хотим локализовать элементы в пользовательском интерфейсе, например, если вы хотите отображать разные изображения с локализованным текстом для определенного UIButton.
Вы можете добиться этого, используя локализованные xib-файлы. Для каждого языка будут отдельные файлы xib. И когда вы устанавливаете какой-либо текст в пользовательском интерфейсе от контроллера, NSLocalizedString.
Надеюсь, это поможет.

0

NSLocalizedStringwas first available in 10.0

Я локализуюсь программно ж/NSLocalizedString потому что таким образом я могу иметь все мои строки в одном месте.

Вместо создания .xib генерации локализации, потому что с этим вы будете иметь файл строк для каждого xib, который у вас есть.

Однако, если у вас есть .xib, что вы не изменяем программно (т.е. не имеют пользовательский класс набор как file's owner), то вы не будете иметь возможность программно установить NSLocalizedStrings. В этом случае вам придется генерировать файлы строк через .xib.

Кроме того, это немного сложнее получить доступ к строковые файлы, связанные с .xib, потому что это напрямую связано с .xib

0

NSLocalizedString существует с прошивкой 1.

В основном вам нужно NSLocalizedString для всех динамически создаваемых строк.

В новом проекте я бы рекомендовал AutoLayout и базовую локализацию. Существует один файл .xib и все локализации - и настройки макета - выполняются во время выполнения через файлы .strings.