如何在 class 扩展 FrameLayout 中设置可见性?

How to setVisibility within class extending FrameLayout?

我有一个 FAB class 扩展 FrameLayout,我想在其中有一个实现显示效果的隐藏方法。因此我需要将可见性设置为 INVISIBLE:

public class FloatingActionButton extends FrameLayout implements Checkable {
    ...
    private void hide() {
        ...
            this.setVisibility(View.INVISIBLE);
        ...
        hideFabAnimator.start();
    }
}

但是在 'this' 上尝试调用 setVisibility() 时出现错误:"Cannot resolve method 'setVisibilty(int)'"。

似乎 this.setVisibility(View.INVISIBLE); 位于另一个 class 中。这种情况 FloatingActionButton.this.setVisibility(View.INVISIBLE) 将解决您的问题。

你可以找到解释 here