[英]Change View height after translation animation?
在我的活动中,我有一个BottomNavigationView
和一个RecyclerView
,我想做的是在滚动视图时隐藏BottomNavigationView
,我正在使用以下代码:
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
BottomNavigationView navigationView = requireActivity().findViewById(R.id.bottom_navigation_view);
if (recyclerView.getScrollState() == RecyclerView.SCROLL_STATE_DRAGGING && dy > 0){
navigationView.animate()
.translationY(navigationView.getHeight());
}
else if(recyclerView.getScrollState() == RecyclerView.SCROLL_STATE_DRAGGING && dy < 0)
navigationView.animate()
.translationY(0);
}
});
这很好用,除了它仍然显示视图的边界,所以在隐藏BottomNavigationView
后我得到一个空矩形。 使视图高度跟随翻译的最佳方法是什么?
我看不到您的“隐藏” BottomNavigationView
但如果你使用
BottomNavigationView.setVisibility(View.INVISIBLE);
隐藏视图但保持其宽度和高度。
它需要是
BottomNavigationView.setVisibility(View.GONE);
隐藏视图并使宽度 = 0 和高度 = 0
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.