Android Studio显示“Hardcoded String XXX,should use @string resource”的解决方法2-1

    Android Studio在xml布局文件中,有时会显示“Hardcoded String XXX,should use @string resource”的警告信息。其中Hardcoded String指的是字符串硬编码,该警告信息的意思是最好不要使用字符串硬编码,而是要使用@string资源。

   硬编码即直接指定内容时,带来的不便有(1)当程序中存在多个相同的硬编码内容并需要修改时,要将程序代码中每个硬编码内容都要修改一遍,这样的过程比较繁琐(2)硬编码不利于将程序代码转变为其他语言(3)每个硬编码内容都要占用相应的内存空间,因此程序占用的内存更大。

可以将要显示的内容定义在string.xml文件中,需要修改显示的内容时,只需string.xml中的相应项即可,而无需修改程序代码;因为只有string.xml文件中的相应项,这样程序所占的内存空间也会小很多。

1 string.xml文件的位置

在Android Stduio的主界面中,将项目显示的方式设置为“Project”,如图1①所示,之后在“app->src->main->res->values”中找到string.xml文件,如图1②所示。

Android Studio显示“Hardcoded String XXX,should use @string resource”的解决方法2-1_第1张图片

 图1 strings.xml的位置

2 strings.xml的使用方法

strings.xml的内容如图2所示。

 图2 strings.xml文件内容

从图2可知,strings.xml中包含“resources”标签,在该标签中包含了字符串资源。其中,“app_name”是字符串的名称,“My Application”是字符串的内容。在xml布局文件中,不使用硬编码方式而是使用资源名称方式指定视图内容,如图3所示。

Android Studio显示“Hardcoded String XXX,should use @string resource”的解决方法2-1_第2张图片

 图3 通过资源名称方式指定视图内容

通过以上代码,将EditText的内容设置为“My Application”。

3 strings.xml的设置方法

可以通过以下三种方法设置strings.xml中的项。

3.1 直接输入法

从图2中可以看到,指定字符串资源的方法是在“resources”标签中添加“string”子元素,之后设置该子元素的“name”属性和内容即可。可以直接修改strings.xml,实现字符串资源的添加。

3.2 编辑器输入法

3.2.1 打开编辑器

可以使用两种方法打开编辑器

(1)快捷键方式打开

在strings.xml中,要输入子元素的位置上,按下“Alt+Enter”,会弹出如图4所示的菜单。

Android Studio显示“Hardcoded String XXX,should use @string resource”的解决方法2-1_第3张图片

 图4 快捷键方式打开编辑器

选择图4①所示的“Edit translations for all locales in the translations ”,之后选择图4②中的“Open editor”,打开编辑器。

(2)菜单方式打开编辑器

在Android Studio主界面左侧的文件视图树中选择“strings.xml”,如图5①所示,之后在右键菜单中选择“Open Translations Editor”,如图5②所示,打开编辑器。

Android Studio显示“Hardcoded String XXX,should use @string resource”的解决方法2-1_第4张图片

图5 菜单方式打开编辑器

 

 

你可能感兴趣的:(#,Android,Studio问题解决,Android,Studio,Hardcoded,string.xml,Alt+Enter)