0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Kony Internationalization API (i18n)

Last updated at Posted at 2020-05-08

#目次

  1. Kony Internationalization APIの紹介
  2. サンプルロジック

##Internationalization APIとは?
・Internationalization APIは、さまざまな地域で複数の言語をサポートできるようにアプリケーションを強化するプロセスです。 Internationalization APIは「i18n」と略されます。 「kony.i18n」は、多言語アプリケーションを開発するための包括的な機能を提供します。

・「i18n」APIについては以下のリンクを参照
https://docs.kony.com/konylibrary/visualizer/viz_api_dev_guide/content/internationalization.htm

すべてのi18nキーとそのペア値を含むプロパティファイルを使い、言語対応を行うことができます。そのプロパティファイルはロケール(国や地域の設定)で固有でなればなりません。
プロパティを指定する場合、
(language_Country).propertiesの命名規則に従います。

これから、実装の詳細を説明します。

##サンプルの作成

・多言語プロファイルのサンプルを作成する
[Edit]-> [Internationalization(i18n)]-> [Configure Locales]をクリックし、使用したい言語を選択します
文字列を挿入する
image.png

・多言語プロファイルを作成する
各ローカルのキーと値を入力->完了
image.png

・レイアウト
スイッチとリッチテキストでシンプルなフォームを作成します
image.png

ローカライズされた文字列に対応するキーを選択します
image.png

・アクション
スイッチのonSlideアクションを設定し、kony.i18n.setCurrentLocaleAsyncを使用して、指定されたロケールをアプリケーションの現在のロケールとして設定します。


define({
    changeLanguage: function () {
        var selectedIndex = this.view.switchChange.selectedIndex;

        if (selectedIndex === 1) {
            this.change("vi_VN");
        } else {
            this.change("en_US");
        }
    },

    onSuccsess: function () {
        var txt = kony.i18n.getLocalizedString("txt");
        this.view.rtxInternational.text = txt;
    },

    change: function () {
        kony.i18n.setCurrentLocalAsync(key, this.onSuccsess)
    }

});

・結果
スイッチボタンを押すと、対応するローカライズされた文字列が表示されます

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?