片段onResume()被使用FragmentPagerAdapter时,不叫 [英] Fragment onResume() isn't called when using FragmentPagerAdapter

查看:199
本文介绍了片段onResume()被使用FragmentPagerAdapter时,不叫的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要我的片段随时调用某一功能时,他们的活性片段,所以我把它放在onResume(),但它没有被调用。

I need my fragments to always call a certain function when they are the active fragment, so I put it in onResume(), but it isn't being called.

片段A

@Override
public  void onResume(){
    super.onResume();
    Log.d("clear state", " "+clear);
    if(clear == true)
    {
        restart();
        clear = false;
        calculate();
    }
}

我用的FragmentPagerAdapter与ViewPager切换片段

I use a FragmentPagerAdapter with a ViewPager to switch fragments

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()?

So how would I make the fragments call their onResume()?

推荐答案

我有同样的问题,前一段时间。

I had the same problem while ago.

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

Create a new interface and implement it by both of your Fragments:

public interface OnPageSelectedListener {
    void onPageSelected();
}

在父活动实施 android.support.v4.view.ViewPager.OnPageChangeListener 和呼叫片段这样的方法

In parent activity implement android.support.v4.view.ViewPager.OnPageChangeListener and call Fragment method like this:

@Override
public void onPageSelected(int i) {
    OnPageSelectedListener fragment = (OnPageSelectedListener ((PlaceListPagerAdapter)pager.getAdapter()).getFragment(i);
    fragment.onPageSelected();
}

PS:新界面的名称和它的方法是有点混乱,所以一定要小心,或更改

PS: Name of the new interface and its method is a bit confusing, so be careful or change it.

这篇关于片段onResume()被使用FragmentPagerAdapter时,不叫的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆