使用用户定义的属性引用android库项目时的问题

时间:2013-04-24 14:41:05

标签: android reference project

问题是:

  1. 我有一个项目A.它运行良好。
  2. 然后我将A配置为库项目。新的项目B使用它。
  3. 然后问题如下: \ res \ layout \ taskslist.xml:18:错误:找不到包'com.XXX'中属性'content'的资源标识符

    名为“content”的属性是在项目A中由MultiDirectionSlidingDrawer使用的XML中定义的:

    <resources>
     <declare-styleable name="MultiDirectionSlidingDrawer">
            <attr name="content" format="reference" />
            </declare-styleable>
    </resources>
    

    taskslist.xml看起来像:

    <com.XXX.util.MultiDirectionSlidingDrawer
        xmlns:my="http://schemas.android.com/apk/res/com.XXX"
        ...
        my:content="@id/content">
        <include
            android:id="@+id/content"
            layout="@layout/menuwithll" />
        <ImageView
            android:id="@+id/handle"
            ... />
    </com.XXX.util.MultiDirectionSlidingDrawer>
    

    实际上我在项目A中查看R.java。有一个名为“content”的attr喜欢:

    public static final class attr {
         public static int content=0x7f010002;
    }
    

    任何人都知道这个问题?在此先感谢!!!

    顺便说一句。我试过干净的项目。并在“Android”和“Java构建路径”中配置项目B.

1 个答案:

答案 0 :(得分:0)

对于后来也有这个问题的人。通过在布局文件中添加以下代码来解决这个问题非常简单:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:my="http://schemas.android.com/apk/res-auto"