كيفية اكتشاف ما إذا كان الهاتف المحمول يدعم يونيكود من لغة معينة في ج2 مي

StackOverflow https://stackoverflow.com//questions/12705297

سؤال

أنا تصميم تطبيق في ج2 مي ، حيث لدي فقط لإعطاء واجهة بلغة معينة ، ويقول الأردية.ما أفعله هو استخدام أحرف يونيكود لطباعة الملصقات ، مثل" مرحبا " في لغتي ، وعرضها بالطريقة الصحيحة.كما يفترض هذا التطبيق لتشغيل على نماذج المحمول مختلفة, أريد فقط أن أعرف أنه إذا كان البرنامج حليف ممكن للتحقق من أنه إذا كان المحمول معين تشغيل طلبي لا يدعم يونيكود لغتي?لأنه إذا لم يحدث ذلك فإنه يجب أن تظهر التسميات في اللغة الإنجليزية الافتراضية.لم أكن رمز حتى الآن باستثناء تحويل الحروف الهجائية الإنجليزية إلى أحرف لغتي ، أريد فقط أن أعرف وإذا كان ذلك ممكنا لإيجاد وسيلة لأداء هذا الاختيار.شكرا مقدما :)

هل كانت مفيدة؟

المحلول

هناك System الملكية حيث يمكنك قراءة اللغة الحالية المحددة على الهاتف.

String locale = System.getProperty("microedition.locale");

يحدد الحرفان الأولان اللغة بينما يحدد الحرفان الأخيران البلد.على سبيل المثال, "en-US" يمثل اللغة الإنجليزية في الولايات المتحدة الأمريكية ، بينما "pt-BR" يمثل البرتغالية في البرازيل.
الشيء الجيد هو أن يكون لديك كل واجهة المستخدم الرسومية الخاصة بك Stringق تحميلها على أساس اللغة الحالية.لنفترض أنك تخزن كل هذه السلاسل في مصفوفة واحدة وتهيئتها على النحو التالي:

String messages [] = null;

if (locale.startsWith("pt")) {
    messages = new String [] {
        "Novo Jogo",
        "Configurações",
        "Ajuda"
    };
} else { // default language is English
    messages = new String [] {
        "New Game",
        "Settings",
        "Help"
    };
}

ثم تقوم بتعريف بعض الثوابت لتحديد كل فهرس.

static final int MSG_NEW_GAME = 0;
static final int MSG_SETTINGS = 1;
static final int MSG_HELP = 2;

واستخدامها مثل هذا (حيث مينوليست هو مثيل القائمة):

menuList.append(messages[MSG_NEW_GAME], null);
menuList.append(messages[MSG_SETTINGS], null);
menuList.append(messages[MSG_HELPS], null);

مع هذا لديك دعم لغتين في التطبيق الخاص بك.كلما زاد عدد الحالات التي لديك لبدء الرسائل بناء على اللغة ، كان ذلك أفضل للمستخدم النهائي.

كما رأينا في http://smallandadaptive.blogspot.com.br/2008/12/internationalization-or-just-i18n-count.html

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top