1

在 eclipse 中编程时,我总是很欣赏编译器“与我一起思考”,因此我总是启用编译器提供的几乎所有警告。然后我编程这样,我没有得到任何!我启用的警告之一是编译器在遇到空块时会警告我,因为这可能表明我这边可能存在编程错误或疏忽。为了使这样的警告静音,我总是输入注释,表明这个块或类是故意空白的。

然而,对于 Android 应用程序,总是会留下一个警告,它位于自动生成的 gen/package/path/here/R.java 资源文件中,内容如下:

/* AUTO-GENERATED FILE.  DO NOT MODIFY.
 *
 * This class was automatically generated by the
 * aapt tool from the resource data it found.  It
 * should not be modified by hand.
 */

package foo.bar.someappname;

public final class R {
    ...
    public static final class attr {  /* <<< this empty class creates a compiler warning */
    }
    ...
}

空类“attr”会导致编译器警告(顺便说一句:该类中的几乎所有标识符都违反了标准的 Java 命名约定,尤其是在标识符中使用大写字母,但这是另一回事)。

我也想消除那个“最后”警告。某处是否有此类的模板,以便我可以在那里输入一些评论?或者我可以在哪里定义一些虚拟值以使此类不再为空?这个“attr”类是用来做什么的,即什么数据会进入这个类?

迈克尔

4

1 回答 1

2

attr 是存储在res/values/attr.xml文件中的资源

在 attr 中,您可以为您的 xml 组件(视图)创建自己的属性

<declare-styleable name="MyCustomView">
    <attr name="myattribute" format="string" />
</declare-styleable>

如果您有 attr 资源并且它是空的,那么只需将其删除

在此处查看示例

于 2012-04-08T16:21:26.463 回答