是否有这样的库或者我可以合并在一起实现此功能的一组库?
我找到了CW EndlessAdapter和HorizontalVariableListView,它们分别是我的要求的答案。
两者之间似乎存在兼容性问题。是否可以将这些功能结合在一起?请建议。
答案 0 :(得分:0)
我使用sephiroth74's Horizontal ListView。
对于Endless ListView,我在其页脚中添加了ProgressBar
。这是Endless ListView的代码。
private enum ListViewStatus {
LOADING_NEXT_PAGE, DOING_NOTHING
}
private void setEndlessListView(HListView hListView, final Data listData) {
View footer = View.inflate(getContext(), R.layout.endless_list_footer, null);
footer.setLayoutParams(new AbsHListView.LayoutParams(AbsHListView.LayoutParams.WRAP_CONTENT, mDimensionsFeaturedThumbnail.y));
hListView.addFooterView(footer);
hListView.setOnScrollListener(new OnScrollListener() {
private int mFirstVisibleItem;
@Override
public void onScrollStateChanged(AbsHListView view, int scrollState) {
}
@Override
public void onScroll(AbsHListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
if(visibleItemCount != 0 && firstVisibleItem > mFirstVisibleItem) {
boolean shouldLoadMore = (firstVisibleItem + visibleItemCount >= totalItemCount) && (mListView.getTag() == ListViewStatus.DOING_NOTHING);
if(shouldLoadMore) {
loadMoreData(listData.getPageNumber()+1);
}
}
mFirstVisibleItem = firstVisibleItem;
}
});
}
在初始化ListView
并加载数据时,不要忘记写这一行:
mListView.setTag(ListViewStatus.DOING_NOTHING);