【问题标题】:Navigate to specific tab when app comes to foreground from the background当应用程序从后台进入前台时导航到特定选项卡
【发布时间】:2014-06-04 18:50:55
【问题描述】:

我正在开发一个具有FragmentActivity 的应用程序,其中我有一个ActionBar,顶部有3 个选项卡。在每个选项卡中,我正在加载一个特定的片段。

我想知道的是,当我的应用程序处于前台时,假设用户正在查看第三个选项卡,然后按下home 按钮,应用程序将进入后台。当他点击主屏幕上的应用程序图标一段时间后,应用程序将进入前台,并且有时我希望用户看到第三个选项卡以外的特定选项卡。 (这是默认行为)。

我怎样才能做到这一点?

我尝试使用 actionBar.addTab(actionBar.newTab().setText(mSectionsPagerAdapter.getPageTitle(SectionIterator)).setTabListener(this), true);

onCreate() 方法中,但这仅在应用程序首次启动时有效,而不是在应用程序从后台进入前台时有效。

感谢任何见解。

【问题讨论】:

    标签: android android-fragments tabs android-viewpager


    【解决方案1】:

    我完成此操作的方法是 @Omer 使用 onResume() 方法所建议的。

    onResume()方法里面我写了如下代码

    ViewPager pager = (ViewPager)findViewById(R.id.pager);
    
    int DefaultTabToBeSelected = vGetValueForDefaultTab();
    
    pager.setCurrentItem(DefaultTabToBeSelected);       
    

    【讨论】:

      【解决方案2】:

      使用 onResume() 方法。每当用户在离开应用程序后回到您的应用程序(但不会完全杀死它)时,都会调用此方法

      【讨论】:

      • 你能告诉我应该在 onResume() 方法中具体做什么吗?
      • 将与 onCreate 中完全相同的代码放入 onResume() 方法中选择您想要的选项卡
      • 相同的语句在onResume() 中不起作用,因为标签已经创建并添加到actionBar
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-22
      • 2012-01-09
      相关资源
      最近更新 更多