Android Pull To Refresh ListView:消除箭头提示

时间:2013-05-23 09:08:12

标签: android android-listview pull-to-refresh

我正在使用Chris Banes的this library(我永远不会感谢这个人)。它有两种不同的行为,具体取决于Android版本。我想摆脱只在android低于4.0的设备上显示的PullToRefresListView(下图中圈出)的图形提示。

有人知道怎么做吗?

enter image description here

解决方案:

对于将来在此搜索相同解决方案的任何人来说,它是:在PullToRefreshAdapterViewBase类中更改getShowIndicatorInternal方法:

private boolean getShowIndicatorInternal() {

    return mShowIndicator && isPullToRefreshEnabled();
}

到此:

private boolean getShowIndicatorInternal() {

    return false;
}

3 个答案:

答案 0 :(得分:10)

如果使用布局XML文件,还可以在ptr:ptrShowIndicator="false"声明中指定PullToRefreshView。例如:

    <com.handmark.pulltorefresh.library.PullToRefreshListView
        xmlns:ptr="http://schemas.android.com/apk/res-auto"
        android:id="@+id/pullToRefreshListView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        ptr:ptrShowIndicator="false" >
    </com.handmark.pulltorefresh.library.PullToRefreshListView> 

对于其他属性,您可以参考库中的/res/values/attrs.xml,这是自我记录的。

您还可以找到sample project值得关注的内容。

答案 1 :(得分:2)

快速和脏 - 只需用图像res文件夹中的透明图像替换箭头提示的图像文件。

答案 2 :(得分:1)

我想试着看看你是否可以调整代码来简单地把它拿出来。 我不知道是否有任何方法可以为你做这个,但如果有的话,它们应该很容易找到。

快速滚动代码,这可能是件事;

https://github.com/chrisbanes/Android-PullToRefresh/blob/master/library/src/com/handmark/pulltorefresh/library/internal/IndicatorLayout.java

虽然我不确定这是否真的是那个箭头,因为它没有在这个类中显示任何关于基于版本的提示。