3

我正在尝试使用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);

难道我做错了什么?

谢谢!

4

2 回答 2

2

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

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

而不是包含应用程序包名称的 URI。在构建时,此 URI 将替换为特定于应用程序的 URI。

于 2012-06-07T20:27:56.670 回答
2

我遇到过同样的问题,

我所做的修复它是将对库的引用从列表的底部移动到列表的顶部。我认为我引用的某些内容与R.java.

您可以进行搜索R.javapull_to_refresh_sub_text确保它已正确生成。

于 2012-09-27T15:58:53.463 回答