当前位置: 首页 > 知识库问答 >
问题:

如何在android studio编辑器中隐藏导航栏?

充小云
2023-03-14

如何使底部导航栏在Android Studio的visual XML编辑器中消失?我已经将AppTheme设置为NoActionBar。导航栏很烦人,因为我的手机没有导航栏,所以当我在可视编辑器中的应用程序底部放置一些东西时(https://i.imgur.com/1QvdIOd.png),当我在手机上运行应用程序时会发生这种情况:https://i.imgur.com/Qk5S1Oe.jpg.谁来帮帮我。我不能继续我的发展,直到这个问题得到解决。

我已经看过了这两个,但它们对我毫无帮助。如何在android活动中永久隐藏导航栏?如何在版面编辑器中模拟沉浸式模式

这是我想要删除的导航栏的屏幕截图:https://imgur.com/gallery/GlmDsIs

以下是我的活动\u main的XML代码:

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#474747"
    tools:context=".MainActivity">

    <EditText
        android:id="@+id/typeMessage"
        android:layout_width="354dp"
        android:layout_height="61dp"
        android:layout_marginTop="504dp"
        android:background="#595858"
        android:ems="10"
        android:hint="Type..."
        android:inputType="text"
        android:padding="10dp"
        android:textColorHint="#969494"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <ImageView
        android:id="@+id/imageView2"
        android:layout_width="60dp"
        android:layout_height="59dp"
        android:layout_marginEnd="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginTop="504dp"
        app:layout_constraintEnd_toEndOf="@+id/typeMessage"
        app:layout_constraintTop_toTopOf="parent"
        app:srcCompat="@android:drawable/ic_menu_send" />

    <EditText
        android:id="@+id/messageOutput"
        android:layout_width="354dp"
        android:layout_height="480dp"
        android:background="#595858"
        android:ems="10"
        android:inputType="textMultiLine"
        app:layout_constraintBottom_toTopOf="@+id/typeMessage"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.5"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>

这是我的MAYActivity.kt代码:

import android.support.v7.app.AppCompatActivity
import android.os.Bundle

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }
}

谢谢你的帮助!

共有1个答案

公西财
2023-03-14

可能已经太晚了,但如果你还没有弄明白,我想我可能已经为你找到了一个解决方案:

把这个放在onCreate()中

getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);

然后添加以下内容:

@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
if (hasFocus) {
    getWindow().getDecorView().setSystemUiVisibility(
            View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                    | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                    | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                    | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
                    | View.SYSTEM_UI_FLAG_FULLSCREEN
                    | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
}
}

这是留档:https://developer.android.com/training/system-ui/navigation

 类似资料:
  • 我正在做一个应用程序,并有权访问系统权限。我想让导航栏永久隐藏,它甚至不应该出现在用户交互上。 现在我使用这段代码,它隐藏了条,但当用户触摸屏幕时,它会再次显示。是否有任何方法可以永久隐藏它,直到活动停止(); 如有任何关于最佳实施的技术咨询或意见/建议,将不胜感激。

  • 问题内容: 我可以使我的应用程序通过SFSafariViewController自动加载此帖子的网址,并且效果很好,唯一的缺点是导航栏。 以这种方式使用SFSafariViewController导航栏时,它是无用的,因为url是只读的,并且“ done”链接除了重新加载页面外不执行任何操作。因此,我想完全隐藏导航栏。 根据已接受答案的注释,建议将我的根视图控制器设置为SFSafariViewCo

  • 我想知道如何在Android应用程序中隐藏导航栏? 起初我知道如何隐藏它,但一旦我触摸屏幕,它就会弹出。我想把它隐藏起来,就像《部落冲突》这样的游戏把它隐藏起来一样,唯一让它弹出的方法是向下滑动通知或者滑动导航栏应该在的地方。

  • 我想在我的活动中永久隐藏导航栏(而不是整个系统ui)。现在我正在使用这段代码 它隐藏栏,但是当用户触摸屏幕时,它会再次显示。有没有办法永久隐藏它,直到活动;

  • 问题内容: 我想在登录页面中隐藏导航栏。 我确实做到了,但是在其他页面上看不到导航栏。 该代码是My App.jsx文件的一部分。 我在App的状态下创造历史。当此路径名是“ /”或“ / login”时,我隐藏了导航栏。 有用! 但是然后我输入了ID和密码,然后单击登录按钮,获得“成功”结果,并导航到“ / main”。 现在我在主组件中也看不到导航栏。 我怎样才能做到这一点? 对不起,我的英文

  • 问题内容: 如何快速隐藏第一个ViewController或特定ViewController的导航栏? 我在中使用了以下代码: 以及: 两种方法都对所有ViewController隐藏导航控制器。 问题答案: 如果您知道其他所有视图都应显示该栏,则可以将其重新设置为可见。 在Swift中: