我使用ViewPager
和Spinner
实现了三个嵌套片段(在主片段中)。在我的主片段中,我有一个Spinner
视图,用于过滤前两个片段的内容。但是,我不希望这个addOnPageChangeListener()
视图出现在我的第三个片段中。要实现它,我使用mallDropDown
,如下所示:
Spinner
是我的Spinner
视图。
但是,只有通过单击标题选择片段,此实现才有效。如果我通过滑动滚动片段然后它是非常不稳定的,即有时候viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
switch (position) {
case 0:
mallDropDown.setVisibility(View.VISIBLE);
break;
case 1:
mallDropDown.setVisibility(View.VISIBLE);
break;
case 2:
mallDropDown.setVisibility(View.GONE);
break;
default:
mallDropDown.setVisibility(View.VISIBLE);
break;
}
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
出现时它应该没有等等。
olddb.oldtable
答案 0 :(得分:1)
检查这个onPageScrollStateChanged,它可能有效
@Override
public void onPageScrollStateChanged(int state) {
super.onPageScrollStateChanged(state);
if(state == ViewPager.SCROLL_STATE_IDLE) {
// hide if not
}
}