Java android之间的差异:text="@string/hello";和常规右键单击-->;文本视图组件-->;编辑文本

Java android之间的差异:text="@string/hello";和常规右键单击-->;文本视图组件-->;编辑文本,java,android,android-layout,Java,Android,Android Layout,当我在教程的帮助下工作时,我在textview android:text-“@string/hello”中发现了这个错误 然后我浏览了图形视图,右键单击组件并输入文本。然后,该错误将删除并通知我 **Hardcoded string hello should use String resources** @string/hello只需注意Android将字符串加载到位于/values目录(strings.XML)的XML文件中 hello是由name=“hello”指定到该XML中的字符串的I

当我在教程的帮助下工作时,我在textview android:text-“@string/hello”中发现了这个错误

然后我浏览了图形视图,右键单击组件并输入文本。然后,该错误将删除并通知我

**Hardcoded string hello should use String resources**

@string/hello
只需注意Android将字符串加载到位于/values目录(strings.XML)的XML文件中

hello
是由
name=“hello”
指定到该XML中的字符串的ID。

在android中,“@String/”指的是包资源管理器中项目>资源>值>中的字符串.XML位置

xml包含一个引用id为的字符串的xml文件。 例如:


我希望它能帮助你。

Android Studio非常不稳定。以前,它在
string.xml
中自动生成相应的语句。因此,使用以前版本的教程会让初学者陷入困境

string.xml
的工作原理 Android Studio希望您将所有文本写入
string.xml
文件中的一个位置。在所有其他文件中,只需输入缩写。e、 g

android:text="@string/Hello_world"
意味着在
string.xml
文件中找到缩写词
Hello\u world
,并将其替换为所需的文本

string.xml
中,应编写的相应语句为:

<string name="Hello_world">Hello world!</string>
你好,世界!
这应该可以完成任务

可以只编写
android:text=“Hello world!”
(这就是硬编码)。如果您打算成为一名android开发人员,那么您就不会最大限度地提高效率

为什么?<代码>字符串.xml
将所有文本放在一个文件中可以简化许多事情。如有需要,喜欢翻译,易于更改。但是,您应该选择有意义的缩写

我是android编程新手,我可能错了,所以我写这篇评论。我认为
@string/
指的是Project>res>values>中所有XML文件中的所有
标记。我将“strings.xml”重命名为bla.xml,它仍在工作。
android:text="@string/Hello_world"
<string name="Hello_world">Hello world!</string>