📜  Android中的语言本地化示例

📅  最后修改于: 2021-05-09 16:52:26             🧑  作者: Mango

语言本地化是根据需求将应用程序上下文更改为多种语言的过程。 Android是一个整体操作系统,可在全球数以百万计的设备以及不同的组中运行。由于种类繁多,因此方便本地语言的功能为所有Android应用程序带来了优势。要实现此功能,需要针对使用我们应用程序的本地人适当地处理文本,音频文件,数字,货币和图形。通过本文,我们希望展示通过Android应用程序更改上下文语言(如果显式声明)的功能的实现。下面的样本GIF给出得到什么我们将在本文中做的想法。请注意,我们将使用Kotlin语言实施此项目

Android中的语言本地化

分步实施

要使应用程序在Android中根据设备的首选项更改上下文语言,请执行以下步骤:

步骤1:创建一个新项目

要在Android Studio中创建新项目,请参阅如何在Android Studio中创建/启动新项目。请注意,选择Kotlin作为编程语言。

第2步:创建文件夹值-嗨,以存储自定义消息

通过执行以下步骤来创建文件夹values-hi-hi扩展名定义为,如果设备的首选项设置为Hindi(hi) ,则将根据values-hi文件夹中存在的数据设置应用程序中的上下文。

单击Android,然后选择“项目”选项:

Android中的语言本地化

现在,展开文件夹,直到找到res(Resources)文件夹,右键单击它,选择new,然后单击Android Resource Directory。

Android中的语言本地化

将目录名称设置为values-hi

现在创建了values-hi文件夹

Android中的语言本地化

步骤3:建立字符串.xml档案

在此文件夹中创建一个字符串.xml文件,其中应包含一个自定义消息。该文件的实体应与默认字符串.xml文件的实体匹配

现在,在values-hi文件夹中添加一个Values Resource File。

Android中的语言本地化

给它起一个名字,字符串,它创建一个.XML文件

Android中的语言本地化

在values-hi文件夹中创建了字符串.xml文件

Android中的语言本地化

返回Android视图并检查是否存在新创建的文件。

Android中的语言本地化

该文件位于values / 字符串文件夹下

Android中的语言本地化

步骤4:将自定义消息值添加到字符串.xml(常规)和字符串.xml(嗨)

将自定义消息添加到现有的以及新创建的字符串.xml文件中。两个文件实体必须相同,上下文可能不同。以下是字符串.xml文件的代码。

XML

    
    GFG | LanguageLocalization
    This application tests if the language localization works on the device
  


XML


    
  
  
  GFG | भाषा स्थानीयकरण
  यह एप्लिकेशन परीक्षण करता है कि भाषा स्थानीयकरण डिवाइस पर काम करती है या नहीं।
  


XML


  
    
    
  


Kotlin
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
  
class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }
}


以下是字符串.xml(hi)文件的代码。

XML格式



    
  
  
  GFG | भाषा स्थानीयकरण
  यह एप्लिकेशन परीक्षण करता है कि भाषा स्थानीयकरण डिवाइस पर काम करती है या नहीं।
  

步骤5:使用activity_main.xml文件

现在转到代表应用程序UI的activity_main.xml文件。创建一个将显示自定义消息的TextView。以下是activity_main.xml文件的代码

XML格式



  
    
    
  

步骤6:使用MainActivity.kt文件

没有对MainActivity.kt文件进行任何更改。保持MainActivity.kt文件不变。

科特林

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
  
class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }
}

输出:在模拟器上运行

想要一个节奏更快,更具竞争性的环境来学习Android的基础知识吗?
单击此处,前往由我们的专家精心策划的指南,以使您立即做好行业准备!