如何确定片段何时在ViewPager中可见问题:碎片onResume()在……里面ViewPager在碎片实际可见之前触发。例如,我有两个片段ViewPager和FragmentPagerAdapter..第二个片段仅供授权用户使用,我需要要求用户在片段可见时登录(使用警报对话框)。但ViewPager在第一个片段可见时创建第二个片段,以便缓存第二个片段,并在用户开始滑动时使其可见。所以onResume()事件在第二个片段中激发,很久之后它才变得可见。这就是为什么我试图找到一个事件,当第二个片段在适当的时候显示一个对话框时,这个事件就会触发。这是如何做到的呢?
3 回答
芜湖不芜
TA贡献1796条经验 获得超7个赞
如何确定片段何时在ViewPager中可见
setUserVisibleHintFragment:
public class MyFragment extends Fragment {
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
if (isVisibleToUser) {
}
else {
}
}}
米琪卡哇伊
TA贡献1998条经验 获得超6个赞
onResume()onResume()
@Overridepublic void setUserVisibleHint(boolean visible){
super.setUserVisibleHint(visible);
if (visible && isResumed())
{
//Only manually call onResume if fragment is already visible
//Otherwise allow natural fragment lifecycle to call onResume
onResume();
}}@Overridepublic void onResume(){
super.onResume();
if (!getUserVisibleHint())
{
return;
}
//INSERT CUSTOM CODE HERE}- 3 回答
- 0 关注
- 654 浏览
添加回答
举报
0/150
提交
取消
