【问题标题】:How can i detect which fragment/tab is being utilised?我如何检测正在使用哪个片段/选项卡?
【发布时间】:2014-07-27 18:07:27
【问题描述】:

我的应用程序由几个选项卡组成,这些选项卡都包含一个片段中的 ListView。这些 ListView 使用一个类填充。我使用一个名为 current tab 的变量来检测选择了哪个选项卡,因此可以填充 ListView 以满足其要求。

然而,我已经意识到,当一个选项卡被选中时。还加载了上一个和下一个,以增加 UI 流动性。我目前无法区分正在操作哪个列表视图。因此,我无法检索其相应的数据。

onTabSelected 不会完成这项工作。我想知道是否有其他功能/方法可以让我这样做。

【问题讨论】:

  • Fragment.isResumed() 能解决问题吗?
  • 每个选项卡实现都有一个返回当前选项卡的方法。例如,TabHost 具有 getCurrenttab()。这不是你要找的吗?
  • @Barend 谢谢,由于这个原因,我发现 onCreate 也可以工作。问题的部分原因是我的代码结构。

标签: java android listview android-fragments tabs


【解决方案1】:

您可以尝试覆盖 setUserVisibleHint:

@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
    super.setUserVisibleHint(isVisibleToUser);
    if(isVisibleToUser){
        //called when fragment is visible to the user.
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-07-16
    • 1970-01-01
    • 2012-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-13
    相关资源
    最近更新 更多