Java 更改未聚焦的ViewPager片段中的图像

Java 更改未聚焦的ViewPager片段中的图像,java,android,otto,Java,Android,Otto,所以我有一个视图寻呼机实现如下 在主视图中,我在屏幕右上角有一个类似于导航栏的按钮。当我点击或滑动它时,我希望它消失,当它在主屏幕上重新聚焦时,我希望它再次出现。我已经试了好几个小时了,但运气不好 我知道我需要使用setVisibility(View.GONE)/VISIBLE我只是不断得到空指针,否则图像就不会改变 我实现了OnPageChangeListener(),并尝试使用otto事件来更改按钮状态,但从未收到该事件 简而言之,主要目标是能够与ViewPager中看不见的任何视图上的元

所以我有一个视图寻呼机实现如下

在主视图中,我在屏幕右上角有一个类似于导航栏的按钮。当我点击或滑动它时,我希望它消失,当它在主屏幕上重新聚焦时,我希望它再次出现。我已经试了好几个小时了,但运气不好

我知道我需要使用
setVisibility(View.GONE)/VISIBLE
我只是不断得到空指针,否则图像就不会改变

我实现了
OnPageChangeListener()
,并尝试使用otto事件来更改按钮状态,但从未收到该事件


简而言之,主要目标是能够与ViewPager中看不见的任何视图上的元素进行交互

尝试使用
ArrayList
,当您在
OnPageChangeListener()
中时,对上一个和下一个片段执行您想执行的操作。

我几天前就遇到过这个问题,我重写了
setUserVisibleHint()
最后解决了它

public class YourFragement extend android.support.v4.app.Fragment {
    ...
    @Override
    public void setUserVisibleHint(boolean isVisibleToUser) {
        super.setUserVisibleHint(isVisibleToUser);
        if (isVisibleToUser) {
            mView.setVisibility(View.VISIBLE);
        } else {
            mView.setVisibility(View.GONE);
        }
    }
    ...
}

有人说override
setMenuVisibility()
也可以,但我还没有尝试过,更多信息将在本文中讨论。

尝试使用ArrayList,当你在OnPageChangeListener()中时,用上一个片段和下一个片段做一些你想做的事情。先生,你是一位绅士,一位学者,工作得非常出色。对不起,我不理解你!我的意思是这很有效!很高兴听到这个消息。我将移动此评论以回答问题,并请将其标记为结束此问题的答案。谢谢