将文档添加到布局文件



我正在寻找一种记录布局文件以提高其可重用性的方法。我想要的是像这样在生成的 R 文件中生成 javadoc 的东西。

我知道使用<declare-styleable>时可以这样做。这:

<declare-styleable name="myStyleable">
    <!-- Some comment -->
    <attr name="someAttr" format"color" />
</declare-styleable>

产生我想为布局文件获得的输出,但没有成功:

public final class R {
    /** Some comment */
    public static final int someAttr...
}

有人知道实现这一目标的方法吗?我休息在:

  • 记录布局文件,以便在使用R.layout.my_layout时提供文档
  • 记录文件的特定元素,以便在通过 id f.e 查找文档时可用。 aView.findViewById(R.id.the_id_that_is_documented)

顺便说一下,我找到了部分响应: 对于 ids,如果在资源文件中定义了 id(以 res/values 为单位),则可以添加注释:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- This is a comment -->
    <item name="myId" type="id"></item>    
</resources>

将在 R.class 中产生此结果:

public final class R {
    public static final class id {
    /**  This is a comment 
     */
    public static int myId=0x7f050007;
}

如果您使用@+id/some_cute_id,这将不直接在布局文件中工作


编辑 :这是布局文件的答案。事实上,它可能适用于所有内容(发现它在res/values/public.xml中浏览 sdk 源代码)。这:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- 
         * This layout contains a list that enables to choose a bluetooth device to pair with among paired ones -->
    <public type="layout" name="devices_choose" id="0x7f030005" />    
</resources>

在 R 中生成此输出:

public final class R {
    public static class layout {
        /**  
         * This layout contains a list that enables to choose a bluetooth device to pair with among paired ones 
         */
        public static final int devices_choose=0x7f030005;
    }
}

相关内容

  • 没有找到相关文章

最新更新