如何根据 android 工作室中的语言更改图片
how to change picture depend on language in android studio
你好
我想帮助我。我是 android Studio 编程的初学者。
我想在Android Studio中传一张“具体图片”,按照phone的默认语言。
例子:我有两张图片,图片1:它有阿拉伯文字。图二:有英文字.
问。我想在语句中使用条件“if”和“else if”?
EX : if(语言是阿拉伯语){传递图片1 } else if(语言是英语){传递图片2 }.....以此类推到多种语言.
- 拜托,我想要这个算法的答案。
有两种方法可以做到这一点:
第一种方式,使用switch
和case
(效率更高):
yourImageViewID.setImageResource(R.drawable.image_for_other_languages);
switch(Locale.getDefault().getLanguage()) {
case "ar": {
//"ar" is the code of the Arabic language
yourImageViewID.setImageResource(R.drawable.arabic_image);
break;
}
case "en": {
//"en" is the code of the English language
yourImageViewID.setImageResource(R.drawable.english_image);
break;
}
}
第二种方式,使用if else
(效率较低):
yourImageViewID.setImageResource(R.drawable.image_for_other_languages);
if (Locale.getDefault().getLanguage().equals("ar")) {
yourImageViewID.setImageResource(R.drawable.arabic_image);
}
else if (Locale.getDefault().getLanguage().equals("en")) {
yourImageViewID.setImageResource(R.drawable.english_image);
}
在这两种方式中,yourImageViewID
是 ImageView
,不要忘记将 3 张图片添加到您的资产中,一张用于阿拉伯语,另一张用于英语,第三张一种用于其他语言(如果设备语言不是阿拉伯语或英语,将使用),如果您想向应用程序添加更多语言,也可以添加更多图像
您可以通过将每张图片添加到 res\drawable
内的不同语言环境版本来实现。两个版本的图片必须具有相同的名称,以便 Android 系统在检查设备语言时选择合适的图片。
在您的示例中,您的语言环境是英语和阿拉伯语,因此您需要有两个文件夹:
\app\src\main\res\drawable-ar\myPicture.png
<< 阿拉伯语版本
\app\src\main\res\drawable-en\myPicture.png
<<< 英文版
两张图片名称相同,内容不同,如您所愿
你好
我想帮助我。我是 android Studio 编程的初学者。 我想在Android Studio中传一张“具体图片”,按照phone的默认语言。
例子:我有两张图片,图片1:它有阿拉伯文字。图二:有英文字.
问。我想在语句中使用条件“if”和“else if”?
EX : if(语言是阿拉伯语){传递图片1 } else if(语言是英语){传递图片2 }.....以此类推到多种语言.
- 拜托,我想要这个算法的答案。
有两种方法可以做到这一点:
第一种方式,使用switch
和case
(效率更高):
yourImageViewID.setImageResource(R.drawable.image_for_other_languages);
switch(Locale.getDefault().getLanguage()) {
case "ar": {
//"ar" is the code of the Arabic language
yourImageViewID.setImageResource(R.drawable.arabic_image);
break;
}
case "en": {
//"en" is the code of the English language
yourImageViewID.setImageResource(R.drawable.english_image);
break;
}
}
第二种方式,使用if else
(效率较低):
yourImageViewID.setImageResource(R.drawable.image_for_other_languages);
if (Locale.getDefault().getLanguage().equals("ar")) {
yourImageViewID.setImageResource(R.drawable.arabic_image);
}
else if (Locale.getDefault().getLanguage().equals("en")) {
yourImageViewID.setImageResource(R.drawable.english_image);
}
在这两种方式中,yourImageViewID
是 ImageView
,不要忘记将 3 张图片添加到您的资产中,一张用于阿拉伯语,另一张用于英语,第三张一种用于其他语言(如果设备语言不是阿拉伯语或英语,将使用),如果您想向应用程序添加更多语言,也可以添加更多图像
您可以通过将每张图片添加到 res\drawable
内的不同语言环境版本来实现。两个版本的图片必须具有相同的名称,以便 Android 系统在检查设备语言时选择合适的图片。
在您的示例中,您的语言环境是英语和阿拉伯语,因此您需要有两个文件夹:
\app\src\main\res\drawable-ar\myPicture.png
<< 阿拉伯语版本\app\src\main\res\drawable-en\myPicture.png
<<< 英文版
两张图片名称相同,内容不同,如您所愿