Android自定义视图 - 自定义属性出错

时间:2011-11-03 14:14:46

标签: android android-layout android-widget

我在Eclipse中有一个项目用作库(我将其导出为jar并在其余项目中导入jar。

我想添加一个自定义按钮视图,启用/禁用方法,将背景更改为我想在布局中指定的背景(XML)

我跟着this tutorial但是当我导出apk时出现了这个错误:

错误:包'com.xxx.library'中找不到属性'disabledBG'的资源标识符

这是我库项目中的attrs.xml文件:

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <declare-styleable name="MyButton">
        <attr format="integer" name="disabledBG" />
    </declare-styleable>

</resources>

然后在我的应用程序项目(com.xxx.app.yyy)上,我在布局中有这个:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:mylib="http://schemas.android.com/apk/res/com.xxx.library"
[...]
    <com.xxx.library.View.MyButton
                android:id="@+id/menuMap"
                style="@style/SHGreenButtons"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_marginBottom="12dp"
                android:clickable="true"
                mylib:disabledBG="@drawable/disabled_buttons"
                android:onClick="goMap"
                android:text="@string/menu_map" />
[...]

当我去 /gen/com.symbios.library/R.java 时,还有 R.attr.disabledBG

我做错了什么?我错过了什么吗?

P.S。当我将库导出为jar时,我添加了 src gen res 文件夹。

1 个答案:

答案 0 :(得分:2)

您的项目配置似乎有问题。 如果您有机会链接到项目,则不应使用jar lib。

请看一下这篇文章: click here

希望有所帮助