首页 > 解决方案 > 工具栏没有隐藏在 android 活动中

问题描述

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

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

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

getSupportActionbar.hide()

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

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

2. 我看到了getSupportActionbar.hide()以前应该来的地方,setContentView()

这是 onConfigurationChange 的代码片段

@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");
        }
    }

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

如果有人有一些解决方案或建议,我将不胜感激。先感谢您

标签: javaandroidandroid-studioandroid-layouttoolbar

解决方案


那么在这种情况下,您可以使用布局资源文件中的方向限定符为横向模式定义单独的布局。了解更多


推荐阅读