我有一个ListView
,当我滚动向下或向上,我可以使用此解决方案检测这样的:当滚动回来显示的动作条,而上一个ListView滚动起来
listView.setOnScrollListener(new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) { }
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
if(listView.getFirstVisiblePosition() == 0)
getActionBar().show();
else
getActionBar().hide();
}
});
这样的作品和ActionBar
节目到列表的第一项。当我开始在列表中向上滚动时,我还想再次显示ActionBar
。
编辑:
这是最后的方式,它的工作原理并不总是..有时动作条消失,永远不会回来:
private int mPreviousFirst;
...
listView.setOnScrollListener(new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) { }
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
if(prevVisibleItem != firstVisibleItem){
if (firstVisibleItem < mPreviousFirst)
getActionBar().show();
else
getActionBar().hide();
mPreviousFirst = firstVisibleItem;
}
}
});
我很接近,但不顺心的事:(
你可以检讨你发布?我认为一些信息丢失了,这些情况使得很难理解你的问题。 – reporter 2014-08-28 12:54:21