11

我是 Android 应用程序开发和使用 Java 语言的新手。我的问题是每次我制作 TextView 或 Button 时都会出现一个三角形,其下方带有感叹号。当我点击它时,我看到一条消息说:

硬编码字符串“Button”,应该使用@string资源

我有两个活动,在我的主要活动中有一个按钮,当您单击它时,您将进入第二个活动。但是当我去我main.java的为按钮制作代码时。总是有上面显示的错误。我认为 eclipse 找不到我的按钮的 id 和我的 TextView 相同的 ID,它们有相同的错误消息。

这是我制作的代码:

Button b = FindViewById(R.id.button1);

我还补充说:

Button b = (Button) FindViewById(R.id.button1);

我正在使用最新的 eclipse 经典和 ADT 八月刊。该平台是 Android 4.1 API 16。

4

3 回答 3

12

您不应该使用字符串资源(即 strings.xml 中的字符串)对小部件上的“文本”进行硬编码来设置文本。在 strings.xml 中声明要显示为字符串的“文本”,并在布局文件中使用 @string/your_string_name 访问它。

于 2012-10-01T17:41:27.777 回答
1

Main.xml 文件(与主要活动相关的 xml 文件)

请注意按钮的 id,它以红色四舍五入。当您想在方法中调用它时,您必须使用此 id,例如

Button b = (Button) FindViewById(R.id.button1);

此外,检查您的图形布局是否与我提供的图像匹配。

Main.xml 文件的图形视图

只需使用这些更改再次尝试您的代码。您的 main.java 看起来像这样。

Main.java 文件

于 2014-05-21T14:37:05.093 回答
0

我也是新手,但我相信我明白了。所以基本上这里发生了什么,java希望你把你的硬代码放在string.xml中。这样在访问它时,您将使用以下给定的方法:

前.

但这是应该的。让我们从 string.xml 开始

在 string.xml 中创建像这样的相同元素

然后回到你的activity_main.xml

以这种方式引用创建的元素

于 2021-10-03T20:32:42.697 回答