【问题标题】:Android: remove title bar errorAndroid:删除标题栏错误
【发布时间】:2016-03-10 11:39:09
【问题描述】:

您好,我正在尝试使用以下代码从我的应用中删除标题栏:

    this.requestWindowFeature(Window.FEATURE_NO_TITLE);

在活动中的 onCreate 方法下,但是当我运行应用程序时它会出错并关闭(很抱歉,我不知道如何查看错误日志)。

为什么会报错?谢谢

【问题讨论】:

    标签: java android titlebar


    【解决方案1】:

    你必须在setContentView()之前调用requestWindowFeature(Window.FEATURE_NO_TITLE);

    @Override
    protected void onCreate(
        final Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
    
    
        getWindow().requestFeature(Window.FEATURE_NO_TITLE);
    
        setContentView(R.layout.main);
    
    
    }
    

    如果要删除标题,只需将此样式添加到清单文件中即可。

    android:theme="@style/Theme.Black.NoTitleBar"
    

    【讨论】:

      【解决方案2】:

      setContentView()之前添加requestWindowFeature(Window.FEATURE_NO_TITLE);

      喜欢:

      requestWindowFeature(Window.FEATURE_NO_TITLE);
      super.onCreate(savedInstanceState);
      setContentView(R.layout.your_activity);
      

      【讨论】:

        【解决方案3】:

        您有两种方法可以做到这一点:

        1. 您必须使用Activity 而不是Appcompactactivity

        或者

        1. 如果您使用Appcompactactivity,则添加getActionBar.hide() 而不是requestWindowFeature(Window.FEATURE_NO_TITLE);

        希望这会对你有所帮助。

        【讨论】:

          【解决方案4】:

          试试这个

          在 setcontentview 之前写下这行,你的活动将是全屏的

          requestWindowFeature(Window.FEATURE_NO_TITLE);
                  getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                      WindowManager.LayoutParams.FLAG_FULLSCREEN);
          

          【讨论】:

            【解决方案5】:

            解决方案 1。

            @Override
            protected void onCreate(Bundle savedInstanceState) {
            
                super.onCreate(savedInstanceState);
            
                if (getSupportActionBar() != null) {
                           getSupportActionBar().hide();
                }
            
                setContentView(R.layout.activity_main);
            
            }
            

            解决方案 2。

            可能问题出在您的应用主题上。因此,请检查您的活动类型(Appcompact Activity、ListActivity),取决于活动更改主题,如下所示:

            @Override
            public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setTheme(R.style.No_Title_AppTheme);
            }
            

            在 style.xml 中:

            <resources>
            
                <!-- Base application theme. -->
                <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
            
                </style>
                <style name="No_Title_AppTheme" parent="android:Theme.Light.NoTitleBar">
            
                </style>
            </resources>
            

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2011-01-27
              • 1970-01-01
              • 1970-01-01
              • 2011-09-09
              • 2015-05-28
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多