Android 向下滚动列表视图时显示按钮
我在屏幕底部添加了一个Android 向下滚动列表视图时显示按钮,android,listview,Android,Listview,我在屏幕底部添加了一个按钮。这是一个“转到顶部”按钮。 我想在用户位于列表顶部(即第一行)时将其隐藏,并在向下滚动到第二行之后显示它 我可以将onscroll listner添加到ListView。但我不知道如何检查行数 有人能举例说明如何实现它吗?您可以使用setOnScrollListener 设置每次列表滚动时接收通知的侦听器 示例代码 listview.setOnScrollListener(new AbsListView.OnScrollListener() { @O
按钮
。这是一个“转到顶部”按钮。
我想在用户位于列表顶部(即第一行)时将其隐藏,并在向下滚动到第二行之后显示它
我可以将onscroll listner添加到ListView。但我不知道如何检查行数
有人能举例说明如何实现它吗?您可以使用setOnScrollListener 设置每次列表滚动时接收通知的侦听器 示例代码
listview.setOnScrollListener(new AbsListView.OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
// add here your logic like this
int lastItem = firstVisibleItem + visibleItemCount;
if (firstVisibleItem < 2) {
fab.setVisibility(View.INVISIBLE);
}else {
fab.setVisibility(View.VISIBLE);
}
}
});
listview.setOnScrollListener(新的AbsListView.OnScrollListener(){
@凌驾
公共无效onScrollStateChanged(AbsListView视图,int scrollState){
}
@凌驾
public void onScroll(AbsListView视图、int firstVisibleItem、int visibleItemCount、int totalItemCount){
//把你的逻辑加在这里
int lastItem=firstVisibleItem+visibleItemCount;
如果(第一个可见项<2){
工厂设置可见性(视图不可见);
}否则{
工厂设置可见性(视图可见);
}
}
});
您可以尝试类似的方法
你可以试试这样的谢谢。稍微改变一下就可以了<代码>如果(firstVisibleItem<2)谢谢。
private int preLast;
// Initialization stuff.
yourListView.setOnScrollListener(this);
// ... ... ...
@Override
public void onScroll(AbsListView lw, final int firstVisibleItem,
final int visibleItemCount, final int totalItemCount)
{
switch(lw.getId())
{
case R.id.your_list_id:
// Make your calculation stuff here. You have all your
// needed info from the parameters of this function.
// Sample calculation to determine if the last
// item is fully visible.
final int lastItem = firstVisibleItem + visibleItemCount;
if(lastItem == totalItemCount)
{
if(preLast!=lastItem)
{
//to avoid multiple calls for last item
Log.d("Last", "Last");
preLast = lastItem;
}
}
}
}