orangegirl’s blog

Unityを使用していて気付いた点などのメモ帳

NGUIのPopup Listのローカライズ

NGUIのLabelのローカライズは仕組みを覚えれば簡単なんですが、そのノウハウを元にしてPopup Listのローカライズをやろうと思うと、ちょっとハマるかもしれません。

 

NGUIでPopup Listを作る時、基本的にはUI Popup ListやらUI Spriteやらをアタッチしたオブジェクトの子にLabelを作成するかと思います。

f:id:orange__girl:20150530093118j:plain

こんな感じ。ここではシンプルに、Popup ListのOn Value Changeの箇所にLabelを追加して、Popup Listの選択内容をLabelに送っています。

f:id:orange__girl:20150530094215j:plain

 

さて、Labelのローカライズの時のノウハウを思い出すと、ここでもLabelに対してLocalizeコンポーネントを適用すればいいんじゃないか…と思いますが、これが罠です。

実際には、UI Popup Listの方をインスペクタでちょっといじるだけで完了です。とりあえず、ここではゲームに登場するマップ名をローカライズ対応するという目的のもと、Localization.csvに以下のような内容を記述しました。

f:id:orange__girl:20150530093853j:plain

 Localization.csvをインポートしたら、UI Popup ListのOptions欄に、KEYを記入しちゃいます。そして、Localizedというチェックをオンにします。

f:id:orange__girl:20150530094412j:plain

これで、子のLabelにはローカライズされた文字列が送られます。

f:id:orange__girl:20150530094941j:plain Key「forest」の日本語の時。

f:id:orange__girl:20150530094949j:plain Key「forest」の英語の時。