我想创建可扩展的ListView。
所以,我找到了一些方法,并在listview中设置了监听器。
像这样。listView.setOnScrollListener(new OnListViewScrollListener() {
@Override
protected void onFlinging() {
Log.d(TAG, "onFlinging");
}
@Override
protected void onScrollFinished() {
Log.d(TAG, "onScrollFinished");
}
@Override
protected void onScrolling() {
Log.d(TAG, "onScrolling");
}
});
这里是OnListViewScrollListener.java
public abstract class OnListViewScrollListener implements AbsListView.OnScrollListener {
private final String TAG = OnListViewScrollListener.class.getSimpleName();
int mCurrentVisibleItemCount;
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
if(isValidItemCount()){
switch (scrollState){
case SCROLL_STATE_FLING :
onFlinging();
break;
case SCROLL_STATE_IDLE :
onScrollFinished();
break;
case SCROLL_STATE_TOUCH_SCROLL :
onScrolling();
break;
};
}
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
this.mCurrentVisibleItemCount = visibleItemCount;
Log.d(TAG, "firstVisibleItem, visibleItemCount, totalItemCount # ["+firstVisibleItem+", "+visibleItemCount+", "+totalItemCount+"]");
}
private boolean isValidItemCount() {
return mCurrentVisibleItemCount > 0;
}
protected abstract void onFlinging();
protected abstract void onScrollFinished();
protected abstract void onScrolling();
}
但我不知道如何扩展包含许多行照片的列表视图。
像劳拉里一样。请告诉我如何扩展listview。
感谢。
答案 0 :(得分:0)
Here是如何使用Animation
调整视图大小的示例。您可以将其用于ListView
的展开和折叠。
如果您希望ListView
在展开时显示更多细节(更大的照片等),您需要调用notifyDataSetChanged
并在动画完成后返回适配器中的不同视图。
答案 1 :(得分:0)