如何从片段中的MainActivity工具栏隐藏项目

时间:2017-12-25 13:24:13

标签: java android android-fragments fragment

在我的应用程序中,我在MainActivity中有Toolbar,在MainActivity中我有一个ViewPager来显示4个片段。

toolbar包含一些图片(button)。

我希望其中一个片段隐藏toolbar中的图像。 我编写了下面的代码,但它隐藏了所有fragments中的图像。

我的代码:

@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
    super.setUserVisibleHint(isVisibleToUser);
    if (isVisibleToUser) {
        Handler handler = new Handler();
        handler.postDelayed(new Runnable() {
            @Override
            public void run() {
                troy.setVisibility(View.GONE);
            }
        }, 50);
    }
}

我想在我当前的fragment中隐藏它,而不是全部隐藏它。

我该怎么做?

1 个答案:

答案 0 :(得分:0)

您可以使用addOnPageChangeListener()

ViewPager
viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener(){

    @Override
    public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {       

    }

    @Override
    public void onPageSelected(int position) {
         if (position == 0) { // Condition may vary according to your needs...
             troy.setVisibility(View.GONE);
         } else {
             troy.setVisibility(View.VISIBLE);
         }
    }

    @Override
    public void onPageScrollStateChanged(int state) {
    }
});