Visual Studio 2017 で Xamarin する(3)文字列リソース
リソースファイルを作成する
初めてのAndroid 第4版を一通り読んだ後なので、先にリソースファイルを整備しておいた方が楽なのを知っている。 VisualStudioでリソースファイルを追加するのは慣れたもの。 TicTacToe(移植可能)プロジェクトのプロパティページを開いて、リソースファイルを追加する。
こんな感じになるのだが、多言語対応のために Resources.ja-JP.resx も追加しておく。 Resources.resx と Resources.ja-JP.resx の中身は以下のようにした。
アクセス修飾子をPublicにするのを忘れずに。
Xamlから使うときはこんな感じ。
<?xml version="1.0" encoding="UTF-8"?> <StackLayout xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:properties="clr-namespace:TicTacToe.Properties" x:Class="TicTacToe.FragmentMain"> <Label Text="{x:Static properties:Resources.Title}" VerticalOptions="Start" HorizontalOptions="Center" /> <Button Text="{x:Static properties:Resources.Continue}" /> <Button Text="{x:Static properties:Resources.NewGame}" /> <Button Text="{x:Static properties:Resources.About}"/> </StackLayout>
5行目の
xmlns:properties="clr-namespace:TicTacToe.Properties"
がポイント。
実行してみる
Android
良さそうだが、エミュレーターのロケールをja-JPに指定する必要があった。 エミュレーターで日本語表示する際のロケールは単に ja であるが、 ja ではアプリの日本語表示ができなかった。 Resouces.ja.resxを作成しても解決できない。 面倒くさい予感がするので後回しにする。とりあえず色や座標がリソースから指定できていればローカライズは後から何とかなる。
UWP
こちらは何の問題もない。