我的应用程序包含一个AppCompatActivity和一些片段,在某些片段中,我想隐藏操作栏(例如,登录片段),在其他片段中,我要显示操作栏。该应用程序有一个主题<style name="AppTheme" parent="Theme.MaterialComponents.Light">
,这个主题有一个动作栏,我想知道如何在代码中动态显示或隐藏该动作栏。
我尝试过getSupportActionBar().hide();
,但这只能使操作栏
半透明,它仍然占据着空间。
答案 0 :(得分:2)
我建议您使用没有ActionBar的主题,并将自己的工具栏添加到activity_layout.xml
中。将其放置在布局中后,即可使用toolbar.setVisibility(View.GONE);
轻松隐藏它。如果您想为隐藏和显示动画设置动画,可以使用TransitionManager.beginDelayedTransition()
进行动画处理。根据您想要实现的效果,您还可以尝试设置translationY
来从屏幕上隐藏工具栏。