Android无法去除标题栏

本文解决了一个常见问题:在使用Android Studio创建EmptyActivity时,即使未在layout文件中添加标题栏,程序运行时仍出现标题栏。通过分析,发现这是由于MainActivity继承了AppCompatActivity所致。文章提供了将继承类更改为Activity的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、问题描述

用Android Studio新建一个Empty Activity,layout中的activity_main.xml文件没有添加标题栏,但程序运行时却有标题栏,通过 requestWindowFeature(Window.FEATURE_NO_TITLE) 也无法去除,代码如下:
MainActivity.java

//修改前MainActivity,不管怎样设置,都去除不了标题栏
public class MainActivity extends AppCompatActivity{
	@Override
	protected void onCreat(Bundle savedInstanceState){
		//设置没有标题栏
		requestWindowFeature(Window.FEATURE_NO_TITLE);//无效,仍然有标题栏
		super.onCreate(savedInstanceState);
	}
}

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
	xmlns:tools="http://schemas.android.com/tools"
	android:layout_width="match_parent"
	android:layout_height="match_parent"
	
	<TextView //只有一个TextView ,并没有创建标题栏
		android:layout_width="wrap_content"
		android:layout_height="wrap_content"/>
</RelativeLayout>

2、分析及解决

该问题是由于MainActivity类继承AppCompatActivity导致的。基类AppCompatActivity主界面带有toolbar的标题栏,因此MainActivity中也会有标题栏。要想界面中没有标题栏,只需更改MainActivity继承的类,让它继承Activity,Activity没有标题栏。更改基类后的代码如下:
MainActivity.java

public class MainActivity extends Activity{    //继承Activity,问题解决

	@Override
	protected void onCreat(Bundle savedInstanceState){
		super.onCreate(savedInstanceState);
		
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值