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

仅在单击选项卡时加载片段

赵高韵
2023-03-14

我已经在我的片段中重写了以下方法:setUserVisibleHint

override fun setUserVisibleHint(isFragmentVisible: Boolean) {
        super.setUserVisibleHint(true)

        if (this.isVisible) {
            // we check that the fragment is becoming visible
            if (isFragmentVisible && !isLoadOnce) {
                callAPI(param)
                isLoadOnce = true
            }
        }
    }

在fragment类中,变量设置为:private var isLoadOnce=false。

我有3个片段,问题是当我的活动popsup时,第一个片段是可见的,如果我单击最后一个选项卡,也就是第三个选项卡加载第三个片段,什么也不会发生,即web服务根本不会调用。

共有1个答案

淳于知
2023-03-14

我认为你的问题至少有两个解决方案:

  1. 在片段的onResume()上调用“callapi(param)”;
  2. 重写onPageSelected(int)并在其中调用“callapi(param)”。

告诉我这对你有用吗!

 类似资料:
  • 我在我的项目中使用并以片段形式显示数据。这是一个很棒的图书馆,工作很棒。每个片段都由一个学者的讲座组成,这些讲座是从web服务加载的。访问web服务的代码位于片段的方法中。目前,所有片段的数据在添加到时同时加载。我想知道是否只有当用户单击/滑动到特定的选项卡时才能加载片段的数据。不是一次什么都做。 当前的代码是相当标准的,我从提供的示例[android解决方案]中获得了帮助。1 为了确保Fragm

  • 问题内容: 我有包含大量数据的大型表格,所以我希望每个标签都带有大量数据的标签。 我希望在单击标签标题时可以延迟加载标签内容,然后在以后再次选择时不需要再次重新加载。 我认为这个示例符合我想要的方向: [ngular-ui选项卡在tab-content中加载模板 但这似乎加载了一个静态模板: 如何使用$ http.get()动态加载窗格的内容?注意:这已经是通过ng-view路由加载的页面,因此我

  • 我使用有5个选项卡的BottomNavigationView。最初,我加载第一个标签一旦应用程序启动。当我单击任何其他选项卡时,就会调用API并加载数据。现在,当我再次单击上一个选项卡(在启动时加载)时,API调用将再次加载相同的数据。

  • 我有一个视页,有3个标签在里面。所有三个选项卡都有它们的片段。我注意到,当我将adapter设置为ViewPager时,每个片段数据都是在第一次加载的。 我需要的是只有当特定的标签被点击时才加载相应标签的片段数据。

  • 我正在尝试在我的网站上做一个标签功能,我希望有那个标签响应。所以我做了这样的代码: null null 现在我有两样东西, > 首先,我希望在单击标题(伦敦、巴黎、东京)时关闭选项卡,然后在单击该标题时从该标题中删除活动类。 其次,我希望有两个标签在行的响应,第三个标签在第二行,然后单击打开被点击的标签,然后向下推第三个标签。 任何提示都会有帮助,提前谢谢

  • 在jQuery中创建选项卡。单击其他选项卡时,所有选项卡都将消失。我想不出解决办法 以下是无法正常工作的页面:http://www.sleepfullnights.com/products/sfn-537 这是另一个用它工作的人的JSFIDLE:http://jsfiddle.net/gravitybox/7pHg4/我已经复制并粘贴了其中的每个元素到页面中,问题仍然存在。 一个人指出,当点击标签