工具栏没有隐藏在 android 活动中

Posted

技术标签:

【中文标题】工具栏没有隐藏在 android 活动中【英文标题】:toolbar is not hiding in android activity 【发布时间】:2020-11-25 05:42:01 【问题描述】:

我有一个包含来自 YouTube 的视频视图的活动,我们希望当有人旋转手机时,工具栏应该隐藏。实际上我们的应用程序中有旋转锁定,所以除了这个包含活动的视频之外,没有活动可以旋转。我正在使用onConfigurationChange 旋转屏幕。

我在该活动中实现了自定义工具栏,当配置更改和代码更改屏幕位置时,它应该隐藏或显示,但它不起作用。

我正在使用此代码隐藏工具栏

getSupportActionbar.hide()

好吧,我对此有些怀疑,为什么它不起作用:

1 .首先,当配置更改时,活动会从头开始创建,因此隐藏工具栏的命令会被覆盖和鞋子

2 。我在某处看到getSupportActionbar.hide() 应该在前面,setContentView()

这里是onConfigurationChange的代码sn-p

@Override
    public void onConfigurationChanged(Configuration newConfig) 
        try 
            super.onConfigurationChanged(newConfig);
            int accelometerState = android.provider.Settings.System.getInt(getContentResolver(), Settings.System.ACCELEROMETER_ROTATION, 0);
            if (accelometerState == 1) 
                if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) 
//                    toolbar.setVisibility(View.GONE);
//                    getSupportActionBar().hide();
                    isRotate = true;
                
                if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) 
//                    toolbar.setVisibility(View.VISIBLE);
//                    getSupportActionBar().show();
                    isRotate = false;
                
             else 
                if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) 
                    this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
                
            
         catch (Exception ex) 
            Log.e("home", "something went wrong in the VideoViewFullScreen.java");
        
    

我想弄清楚这里有什么问题,

如果有人有一些解决方案或建议,我很感激他们。 提前谢谢你

【问题讨论】:

你活动中的工具栏是默认工具栏还是你自己实现了工具栏?您的活动也是扩展 Activity 或 AppCompatActivity 吗?? 您如何在活动中设置工具栏?您可以简单地使用工具栏的视图 ID 并设置它的可见性 @AbhishekChoudhary 我正在扩展 AppCompatActivity 并实现了 support.widget7.toolbar @VivekMishra 我从布局中获取参考并通过 setSupportActionBar() 进行设置,我尝试了 toolbar.setVisiblity 但它根本不起作用 从您的 onConfigurationChanged 方法中添加代码片段 【参考方案1】:

在这种情况下,您可以使用布局资源文件中的方向限定符为横向模式定义单独的布局。学习more。

【讨论】:

以上是关于工具栏没有隐藏在 android 活动中的主要内容,如果未能解决你的问题,请参考以下文章

如何在android中隐藏工具栏?

android在特定片段中隐藏工具栏

Android studio怎么使用工具窗口隐藏技巧

选项卡式活动中未显示工具栏标题

Android - 在单个活动应用程序中使用工具栏按钮弹出 Back Stack

Android:向上滚动时显示工具栏(向上拖动),向下滚动时隐藏(向下拖动)