当用户停止滑动而不是android的fragmentviewpager中的上一个,当前,下一个模式时加载片段?在 fragmentviewpager 中一次加载单个片段而不是多个。
问问题
151 次
1 回答
1
在 Fragment Load FragmentViewPager 将 setUserVisibleHint 设置为当前片段的 true。通过它我们可以在 FragmentViewPager 中延迟加载片段。在下面的代码中,我设置了 1000 毫秒的延迟。
@Override public boolean getUserVisibleHint() {
boolean isVisible = super.getUserVisibleHint();
return isVisible;
}
public Runnable handleDelays = new Runnable() {
@Override
public void run() {
if (getUserVisibleHint()) {
// Application Logic
}
}
};
private Handler pagerHandler;
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
if (this.isVisible()) {
if (!isVisibleToUser) {
pagerHandler.removeCallbacks(handleDelays);
} else {
pagerHandler.removeCallbacks(handleDelays);
pagerHandler.postDelayed(handleDelays, 1000);
}
} else {
if (pagerHandler != null) {
if (!isVisibleToUser) {
pagerHandler.removeCallbacks(handleDelays);
} else {
pagerHandler.removeCallbacks(handleDelays);
pagerHandler.postDelayed(handleDelays, 1000);
}
} else {
pagerHandler = new Handler();
}
}
}
于 2013-10-29T12:50:24.783 回答