String.xml在Android中不会更新

时间:2013-03-15 08:28:20

标签: android xml string textview

当我将此代码添加到activity_main.xml时,我收到错误,因为string.xml中的值不存在..

除了手动更改string.xml

中的值外,我该怎么办?
<TextView
        android:id="@+id/TextView02"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/unknown"
        android:textSize="20dip" >
</TextView>

2 个答案:

答案 0 :(得分:3)

您正在引用 strings.xml 中的字符串 Hello wolrd ,这在strings.xml文件中不存在。

您无法以编程方式更改strings.xml中的值。

您可以执行以下操作以编程方式更改textview中的文本。

TextView tv= (TextView) findViewById(R.id.TextView02);
tv.setText("hello");

or
tv.setText(getResources().getString(R.string.my_string));// refer to the string in strings.xml programatically.

您可以在xml中设置文本

    <TextView
    android:id="@+id/TextView02"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="hello"
    android:textSize="20dip" >

在Strings.xml中

    <string name="my_String">Hello World</string>

在xml文件中,您可以引用上面的字符串

    <TextView
    android:id="@+id/TextView02"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/my_string"
    android:textSize="20dip" >

http://developer.android.com/guide/topics/resources/string-resource.html。看看链接。

上面链接中的一个例子。

保存在res / values / strings.xml的XML文件:

  <?xml version="1.0" encoding="utf-8"?>
  <resources>
    <string name="hello">Hello!</string>// hello is defined here in strings.xml
  </resources>

此布局XML将字符串应用于视图:

  <TextView
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:text="@string/hello" />// resource hello is refered here.

答案 1 :(得分:1)

听起来很简单,但我遇到了同样的问题。我刚刚重启Android Studio解决了这个问题。