克里斯·班尼斯(Chris Banes)的Android-PullToRefresh java.lang.NoSuchFieldError:com.handmark.pulltorefresh.lib

我正在尝试使用https://github.com/chrisbanes/Android-PullToRefresh/.我按照示例进行操作,但出现了错误
java.lang.NoSuchFieldError:com.handmark.pulltorefresh.library.R $id.pull_to_refresh_sub_text

这是我的网格:

<com.handmark.pulltorefresh.library.PullToRefreshGridView
  xmlns:ptr="http://schemas.android.com/apk/res/com.abc.myproject"
  android:id="@+id/gv_image"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:listSelector="#00000000"
  android:padding="4dp"
  android:horizontalSpacing="4dp"
  android:verticalSpacing="4dp"
  android:gravity="center"
  android:numColumns="3"
  android:columnWidth="128px"
  android:stretchMode="columnWidth"
  ptr:ptrMode="pullDownFromTop"
  ptr:ptrDrawable="@drawable/android" />

我跑步时遇到上述异常.我将PullToRefresh添加为工作空间中的另一个项目,并使其成为我项目的库.我还添加了Jar文件.我认为错误是因为
    xmlns:ptr =“ http://schemas.android.com/apk/res/com.abc.myproject”?

我跟踪了代码,导致异常的行在LoadingLayout.java中:
mSubHeaderText =(TextView)header.findViewById(R.id.pull_to_refresh_sub_text);

难道我做错了什么?

谢谢!

解决方法:

Android SDK工具r17添加了对具有库中自定义属性的自定义视图的支持.使用自定义属性的布局必须使用名称空间URI:

http://schemas.android.com/apk/res-auto

而不是包含应用程序包名称的URI.在构建时,此URI被应用程序专用的URI取代.

上一篇:2、Spring-RootApplicationContext-refresh


下一篇:iOS开发系列--视图切换