Android:如何在 R.java 中声明 Styleable?

标签 android

我正在尝试使用这个ViewPager extension 。这个插件帮助我使用 SwipeyTab。我成功地将示例作为单个应用程序运行。所以我想将扩展集成到我的应用程序中。然后我复制了java文件并更改了包名称,一切都很好。但我在这些行上遇到了一些错误:

mTextColorCenter = a.getColor(R.styleable.ViewPagerExtensions_textColorSelected, mTextColorCenter);
mLineColorCenter = a.getColor(R.styleable.ViewPagerExtensions_lineColorSelected, mLineColorCenter);
mLineHeightSelected = a.getDimensionPixelSize(R.styleable.ViewPagerExtensions_lineHeightSelected, mLineHeightSelected);

Eclipse 说:Styleable 无法解析或不是字段。其他包含 styleable 的行也会给出相同的错误。如果我尝试单击“解决此问题”,则不会发生任何变化。

当我查看扩展的 R.java 文件时,我看到了这些行:

public static final class styleable {
    public static final int[] ViewPagerExtensions = {
        0x7f010000, 0x7f010001, 0x7f010002, 0x7f010003,
        0x7f010004, 0x7f010005, 0x7f010006, 0x7f010007,
        0x7f010008, 0x7f010009, 0x7f01000a
    };

    public static final int ViewPagerExtensions_dividerColor = 7;

    // there is more 
}

我知道无法编辑 R.java。我如何在 R.java 中为此扩展定义 styleable ?有什么建议吗?

最佳答案

您应该在单独的 xml 文件中定义您需要的属性。我的意思是创建一个values.xml并使用<declare-styleable name="ViewPagerExtensions"></declare-styleable>标签。

举个例子:

<declare-styleable name="ViewPagerExtensions">
    <attr format="integer" name="dividerColor" />
</declare-styleable>

对了,项目中已经有attrs.xml了,check it out :

关于Android:如何在 R.java 中声明 Styleable?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11541132/

相关文章:

java - Android Fragment到Activity方法调用

android - 检查 ParseFile 是否为空

java - Android 中的关闭音频问题

android.view.inflateexception fragment

android - Delphi Android RESTRequest: channel 无法恢复,将被丢弃

android - 在android中为 View (Imagebutton)的X和Y坐标获取0值

android - 在运行时检查应用程序发布签名——先有鸡还是先有蛋?

android - 错误 : package android. View 不存在

android - Gson toJson 将 "\n"添加到我的属性(property)的末尾

Java:OpenGl ES 2.0 着色器灯