[iOS/Swift] Localization

Allie·2022년 2월 20일
3
post-thumbnail

동계 올림픽 끝

그래요. 바쁜 와중에 챙겨봤던 열받는 중국 동네 체전이 끝이 났읍니다.
그리고 오랜만에 포스팅을 하러 왔어요..

지난 포스팅의 인기에 부담감을 누르지 못ㅎㅏ고 은퇴하려고 했으나 돌아와봤읍니다. 이제 어그로 JAJE 할게요~!~!

자 그래서 오늘은 다국어 처리를 위한 Localizing에 대해 알아보겠읍니다.

Localizing

다들 아이폰 언어설정 한국어로 해놓으셨나요?
저는 영문과 출신답게(?) 영어로 해놓았습니다. 껄껄
설정할 때, 잘 못찾아서 한번씩 한국어로 바꾸고 그러는거 다들 공감하시죠? 저만 그러는거 아니라고 어서 말해주세요. 이럴거면 한국어로 쓰라는 말 다들 한번씩 들어보셨죠? ㅎ 아님말규 ㅎ

아무튼 사용자의 언어 설정에 따라 어플 내부의 텍스트에 반영이 되게끔 하는게 로컬라이징인 것 같슴다.

어떻게 하는지 알아보자.

  1. Xcode 프로젝트를 하나 만들고 프로젝트 설정에 가면, 아래와 같이 Localizations 메뉴를 찾을 수 있어욧.

    플러스 버튼을 눌러서 내 어플이 지원할 언어를 추가해주면 되는데, 저는 반칙대장들은 싫어서 한국어 일본어만 추가해주었읍니다. (은근 뒤끝 작렬)

    아 그리고 기본적으로 English ㅡ Development Language 라고 되어있는데 영어가 base라서 영어는 따로 추가해주지 않아도 된다는 말이다.

  1. 이렇게 하고나서 원하는 곳에 Strings File을 추가해주면 되는데, 여기서 파일이름은 💫 Localizable 💫으로 했습ㄴㅣ당

    Localizable 파일을 보면 인스펙터 영역에 아래와같이 Localization에 있는 버튼을 눌러주면,

    짜잔~!~! 파일 밑에 base인 영어와, 내가 추가해준 한국어, 일본어 파일이 생성된 것을 볼 수 있다.

  2. 그럼 이제 각각의 파일에서 "Key" = "Value" 와 같은 형식으로 다국어 처리를 해주면 된다. 추가하고 싶은 형식이 있다면 더 추가할 수 있고 문자열 끝에 세미콜론 ;을 빼먹으면 안된다.

  1. UILabel을 만들어 테스트 해보자. String(format:) 메서드의 파라미터로 NSLocalizedString을 받아서 Key를 넣어주고 (내가 작성한 코드에서는 "Hello"가 Key가 되겠다.) comment에는 주석을 넣어주는데 빈 문자열이나 key에 대한 설명정도가 들어가면 적당할 듯 싶다.

    💡 Tip : String extension으로 좀 더 간결하게 사용하는 방법 도 있다.

    적용한 모습

ㅁr무ㄹi...⭐️

자 그래서 오늘은 Localizing에 대해서 알아봤습니다. (전쓰트st)
글로발 어플을 만들려면 필수로 알고 있어야겠네요.
그럼 이만~!~!

profile
게발자🦀 되는 중.. 궁김하다.. 궁김해..

0개의 댓글