我怎么知道焦点何时放在viewpager中的片段之一上?

时间:2018-10-24 05:17:40

标签: android android-fragments android-viewpager fragment

我在视图寻呼机中创建了五个片段。

在执行包含viewpager的活动时会创建所有片段。

因此,执行活动后立即执行片段的方法。

在其他部分,这正是我想要的。

但是,此方法通过Intent引发了另一个我不想要的活动。

我要执行此方法的时间是将片段放在屏幕上。

当在屏幕上显示已创建的视图分页器中的片段时,是否存在一种可行的方法?

片段的一般生命周期方法无法使用,因为它与活动执行同时工作。

如果您知道我可以使用它的任何方式,不胜感激。

祝你有美好的一天:)

2 个答案:

答案 0 :(得分:1)

请实施此PS。在Kotlin中,jAVA几乎是相同的

viewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
        override fun onPageScrollStateChanged(state: Int) {}
        override fun onPageScrolled(position:Int,positionOffset:Float,positionOffsetPixels: Int) {}
        override fun onPageSelected(position: Int) {
            when (position) {}
        }
    })

答案 1 :(得分:1)

在片段中覆盖此方法

@Override
    public void setMenuVisibility(boolean menuVisible) {
        super.setMenuVisibility(menuVisible);
        //if fragment is visible then menuVisible = true else false
    }