在滑动选项卡时,不调用oncreateView of Fragment,如何每次都调用oncreateView

时间:2013-11-24 07:31:05

标签: android android-fragments

我有3个标签,我正在使用fragments。当第一次调用activity时,会生成所有3个片段。我在fragment1上有一些复选框,当我在fragment1上执行某些操作并轻扫时,我想再次呼叫oncreateView的{​​{1}}? 每当我滑动或点击选项卡时,我想再次调用oncreateview,因为我正在动态生成fragment3 UI。 如果我回到fragment3然后回到fragment1,我会看到更改。

a)我的活动正在延长fragment3

FragmentActivity

b)适配器类正在扩展public class AddProgramActivity extends FragmentActivity implements ActionBar.TabListener

c)我的片段类正在扩展FragmentPagerAdapter

请建议我每次刷卡或点击标签时如何强制我的片段Fragment,或每次刷卡时如何刷新。{/ p>

1 个答案:

答案 0 :(得分:1)

我和你的一样有同样的问题。我的情况是尝试设置标志以禁用ActionBar按钮,并在每次创建视图时调用invalidateOptionsMenu

我在动作栏上有3个标签(对应3个片段)。如果我从选项卡1选择到选项卡2并返回选项卡1,则不会调用选项卡1的onCreateView,但如果我从选项卡1选择选项卡3并返回选项卡1,则onCreateView选项卡1的名称是

我找不到任何解决方案。我的解决方法是设置标记并在invalidateOptionsMenu的函数onTabSelected中调用TabListener

像这样的事情

ActionBar.TabListener tabListener = new ActionBar.TabListener() {
    public void onTabSelected(ActionBar.Tab tab, FragmentTransaction ft) {
        pager.setCurrentItem(tab.getPosition());

        MainFragmentActivity.disableBookmarkFlag = MainFragmentActivity.disableShareFlag = true;
        invalidateOptionsMenu();
    }

    .....
}

希望这有帮助