我想知道如何在点击它后使浮动操作栏消失。它执行的操作在同一个片段中,因此我无法简单地加载缺少FAB的另一个活动或片段。我试着用
fab.setVisibility(view.GONE);
在onClickListener中:
FloatingActionButton fab = (FloatingActionButton) rootView.findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
writeProfile();
fab.setVisibility(view.GONE);
}
});
但是当然你无法从内部类中访问变量。
编辑:接受的答案可以隐藏FAB,但是如何从另一种方法中取消隐藏FAB?
答案 0 :(得分:2)
这是由于app:layout_anchor属性。在更改可见性之前,您必须摆脱锚点:
CoordinatorLayout.LayoutParams p = (CoordinatorLayout.LayoutParams) fab.getLayoutParams();
p.setAnchorId(View.NO_ID);
fab.setLayoutParams(p);
fab.setVisibility(View.GONE);