android - 如何检测 Android 上的语言是否为英语(所有变体)?

标签 android locale

我只想为英语用户显示一个按钮,有没有办法检测语言设置?

我知道如何获取当前的 Locale,但我不知道将它与 Locale.English 进行比较是否足够,因为肯定有很多英语变化等

有没有人这样做过?

最佳答案

来自Locale docs :

The language codes are two-letter lowercase ISO language codes (such as "en") as defined by ISO 639-1. The country codes are two-letter uppercase ISO country codes (such as "US") as defined by ISO 3166-1.

这意味着

Locale.getDefault().getLanguage().equals("en")

应该是 true。不过,我会小心仅在默认情况下隐藏/显示 UI Locale。许多国家/地区可能有许多用户喜欢另一种语言,但英语非常流利。

关于android - 如何检测 Android 上的语言是否为英语(所有变体)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6368202/

相关文章:

postgresql - Postgres 12 不区分大小写的比较

python - 如何在 Windows 中更改 python 中的语言环境?

android - 无法在 android 中解析符号 'Defaulthttpclient' 和 'Httppost'

java - Android - 在后台监听传入的 TCP/Socket 消息

android - Firebase 用户选择退出分析

java - AsyncTask 完成,但 Activity UI 未更新超过 20 秒

android - minSdk 小于 21 的 Locale.forLanguageTag 等效项?

java - 使用 SimpleDateFormat 的区域设置和日期

c++ - matlab找不到语言环境数据库是什么意思?

android - Android Studio卡在新项目上