当前位置: 首页 > 知识库问答 >
问题:

使用FragmentPagerAdapter时不调用片段onResume()

蒙华翰
2023-03-14
@Override
public  void onResume(){
    super.onResume();
    Log.d("clear state", " "+clear);
    if(clear == true)
    {
        restart();
        clear = false;
        calculate();
    }
}

我使用带有ViewPager的FragmentPagerAdapter来切换片段

public class ScoutingFragSingle extends FragmentPagerAdapter{


@Override
public Fragment getItem(int index) {
    Bundle data = new Bundle();
    switch(index){
    case 0:
        TeamsFragment teamsFragment = new TeamsFragment();
        data.putInt("current_page", index+1);
        teamsFragment.setArguments(data);
        return teamsFragment;
    case 1:

        data.putInt("current_page", index+1);
        data.putInt("matchId", matchNum);
        aFragment.setArguments(data);
        return aFragment;

那么我如何使片段调用它们的onResume()呢?

共有1个答案

莫兴言
2023-03-14

我以前也有同样的问题。

创建一个新接口,并通过您的片段实现它:

public interface OnPageSelectedListener {
    void onPageSelected();
}

在父活动中,实现android.support.v4.view.viewpager.OnPageChangelistener并调用fragment方法,如下所示:

@Override
public void onPageSelected(int i) {
    OnPageSelectedListener fragment = (OnPageSelectedListener ((PlaceListPagerAdapter)pager.getAdapter()).getFragment(i);
    fragment.onPageSelected();
}
 类似资料:
  • 我无法通过使我的片段相互通信,该活动使用作为一个帮助器类,该类实现对选项卡的管理以及将与相关联的连接的所有细节。我已经实现了,就像Android示例项目Support4Demos提供的一样。 主要的问题是,当我既没有Id也没有标记时,如何从获得特定的片段?创建片段并自动生成Id和标记。

  • 我在使用FragmentPagerAdapter时遇到问题。我想从视图寻呼机中的片段中检索数据。当我调用getItem()方法时,它返回一个片段,但不创建片段。所有片段变量均为null。我需要做什么来实例化片段?这是我的适配器。 这是viewpager中的片段。 我不太了解ViewPager是如何工作的,但据我所知,片段在没有设置任何变量的情况下返回的原因是因为ViewPager没有附加片段。如何

  • 假设有两个Fragments,X和Y。我在X上添加Y片段。当Y完成它的工作,然后删除,X再次可见。 问题:当Y片段被删除并且X再次可见时,我必须执行一些任务,但不会调用,因为它取决于活动。那么我怎么知道片段是可见的呢?

  • 嗨,我在主片段内使用带有碎片网的viewPager。我试图从画廊或相机中获取图像到位图,但在选择照片并启动ActivityForResult后,它不会在onActivityResult中捕获... 以下是我如何调用startActivityForResult: 这是我的onActivityResult: 有什么想法吗?

  • 我有一个带选项卡指示器的viewPager。ViewPager是带有FragmentPagerAdapter的setAdaper。 我几乎不了解FragmentPagerAdapter的内部是如何工作的。我注意到邻居片段被恢复(调用OnResume),即使邻居还不可见。 我把更新方法放在OnResume中,以为片断是最新的,它就会更新。 广告横幅刷新 我希望页脚中设置的广告横幅在向左滑动一次或向右

  • 我有相当简单的片段与ListView,CursorLoader和CursorAdapter。一切都在单个活动中(只是切换片段)。我的问题是onLoadFinished()在某些情况下会根据initLoader()调用的位置调用两次。这些情况是: 配置更改(旋转屏幕等) 使用FragmentTransaction,用另一个片段替换当前片段,然后返回(弹出backstack)。在本例中,一个列表项的详