我正在使用android sdk,我正在尝试更改字符串的名称。我已经开始了一个新项目,activity_main.xml显示了Hello World!屏幕上。
我进入strings.xml文件,甚至没有引用此字符串,所以我添加了
<string name="hello_world">Hello World!</string>
我尝试修改Hello World!
并将其更改为以下内容:
<string name="hello_world">Helloooo Worldsss!</string>
但没有改变。
所以我进一步研究了activity_main.xml的文本视图
并将Textview
属性text
修改为:
android:text=@string/hello_world
现在的文字Hello World!已完全从屏幕上消失。也许需要引用从activity_main.xml的textview输入strings.xml文件?
我是Java的新手。
答案 0 :(得分:0)
这看起来就像语法一样;你需要引号。
所以android:text="@string/hello_world"
编辑:详细说明下面的请求。
android:text="Hello World"
将是完全有效的代码,并且会直接显示文本“Hello World”,但是对这样的文本进行硬编码是不好的做法。
当您使用android:text="@string/hello_world"
时,您指示系统查找与名称hello_world
匹配的字符串资源,并插入您在其中指定的任何字符串。部分这有助于组织您的应用程序文本,但主要优势是本地化。例如,您可以使用英语,法语和西班牙语的不同strings.xml文件,所有文件都使用相同名称hello_world
的“Hello World”版本。系统会根据用户设备的语言插入相应的字符串。(显然这是一个完全不同的主题!)
你需要@string位,以便系统知道查找字符串资源,如果你使用android:text="hello_world"
,那就是有效的,只显示文本“hello_world”(包括下划线)。