向下滚动导致激活下拉刷新选项
Scrolling down leads to activate the pull down refresh option
我已将滑动刷新布局附加为顶部父节点,以便为用户提供下拉刷新选项。
所以当我向下滚动时,我无法滚动,下拉选项会自动开始加载。
我搜索了一些关于同一问题的堆栈溢出问题。他们说听滚动并根据列表视图当前索引禁用下拉选项。
我试听了。但是向下滚动时我听不到任何事件。
我的列表视图对象:
mListView = (ListView) getView().findViewById(android.R.id.list);
谁能帮帮我。任何其他有趣的解决方案或解决方法。
我是这样做的,而且效果很好:
class YourActivity extends AppCompatActivity implements ViewTreeObserver.OnScrollChangedListener {
@Override
protected void onStart() {
super.onStart();
mListView.getViewTreeObserver().addOnScrollChangedListener(this);
}
@Override
protected void onStop() {
super.onStop();
mListView.getViewTreeObserver().removeOnScrollChangedListener(this);
}
@Override
public void onScrollChanged() {
if (mListView.getFirstVisiblePosition() == 0) {
swipeRefresh.setEnabled(true);
} else {
swipeRefresh.setEnabled(false);
}
}
}
希望这会有所帮助。
在我的例子中,我通过将 Scrollview 更改为 NestedScrollView.
来解决问题
切换到 NestedScrollView 后它工作正常
我已将滑动刷新布局附加为顶部父节点,以便为用户提供下拉刷新选项。
所以当我向下滚动时,我无法滚动,下拉选项会自动开始加载。
我搜索了一些关于同一问题的堆栈溢出问题。他们说听滚动并根据列表视图当前索引禁用下拉选项。
我试听了。但是向下滚动时我听不到任何事件。
我的列表视图对象:
mListView = (ListView) getView().findViewById(android.R.id.list);
谁能帮帮我。任何其他有趣的解决方案或解决方法。
我是这样做的,而且效果很好:
class YourActivity extends AppCompatActivity implements ViewTreeObserver.OnScrollChangedListener {
@Override
protected void onStart() {
super.onStart();
mListView.getViewTreeObserver().addOnScrollChangedListener(this);
}
@Override
protected void onStop() {
super.onStop();
mListView.getViewTreeObserver().removeOnScrollChangedListener(this);
}
@Override
public void onScrollChanged() {
if (mListView.getFirstVisiblePosition() == 0) {
swipeRefresh.setEnabled(true);
} else {
swipeRefresh.setEnabled(false);
}
}
}
希望这会有所帮助。
在我的例子中,我通过将 Scrollview 更改为 NestedScrollView.
来解决问题切换到 NestedScrollView 后它工作正常