最近在用PullToRefreshListView的时候,想对listview设置一些属性,结果发现PullToRefreshListView是没法直接设置的,因为PullToRefreshListView本身并不是一个listview,是多个layout组合成的view
仔细看了下PullToRefreshListView源码,在PullToRefreshListView父类的父类PullToRefreshBase.里面找到了点有用的东西:
这里是创建一个listview,并且添加到PullToRefreshListView里面
mRefreshableView = createRefreshableView(context, attrs);
addRefreshableView(context, mRefreshableView);
这里提供了一个方法,可以得到PullToRefreshListView中真正的listview
@Override
public final T getRefreshableView() {
return mRefreshableView;
}
通过下面的代码我们就可以得到真正的listview并且操作了:
ListView l = <span style="font-size:18px;">pullToRefreshListView</span>.getRefreshableView();
l.setTranscriptMode(ListView.TRANSCRIPT_MODE_ALWAYS_SCROLL);