使用requestWindowFeature(Window.FEATURE_NO_TITLE)去掉标题栏失效的解决方法

使用requestWindowFeature(Window.FEATURE_NO_TITLE)去掉标题栏失效,原因可能是创建Activity时继承的是AppCompatActivity而非Activity

一、若创建Activity时继承的是 Activity
第一种:常用的一种方法:

requestWindowFeature(Window.FEATURE_NO_TITLE);//这行代码必须写在setContentView()方法的前面

第二种:在AndroidManifest.xml文件中作如下配置

<application android:theme="@android:style/Theme.NoTitleBar">

二、创建Activity时继承的是 AppCompatActivity
第一种:

getSupportActionBar().hide();//这行代码必须写在setContentView()方法的后面

第二种:可以在AndroidManifest.xml文件中作如下配置

<application android:theme="@style/Theme.AppCompat.NoActionBar">

参考:http://www.cnblogs.com/shuiyin/p/6519031.html

### 作用 `requestWindowFeature(Window.FEATURE_NO_TITLE);` 的作用是去掉 Android 应用程序窗口的标题栏。在默认情况下,Android 应用的窗口会显示标题栏使用方法可以隐藏标题栏,让应用界面有更多的空间来示内容。 ### 使用场景 - **全屏应用**:当开发游戏、视频播放器等需要全屏显示的应用去掉标题栏可以提供更沉浸式的用户体验。 - **自定义界面**:如果开发者希望完全自定义应用的界面风格,使用系统默认标题栏样式,就可以使用方法去掉标题栏,然后自己设计界面布局。 ### 用法 在 Android 的 `Activity` 中使用方法,需要在 `setContentView()` 方法之前调用,因为 `setContentView()` 方法会根据当前窗口的特征来加载布局,如果在之后调用,可能会导致设置无效。以下是一个简单的示例代码: ```java import android.app.Activity; import android.os.Bundle; import android.view.Window; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 去掉标题栏 requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); } } ``` 另外,除了在代码中使用 `requestWindowFeature(Window.FEATURE_NO_TITLE);` 方法,还可以通过在 `styles.xml` 文件中定义样式来去掉标题栏,示例如下: ```xml <style name="notitle"> <item name="android:windowNoTitle">true</item> </style> ``` 然后在 `AndroidManifest.xml` 文件中为 `Activity` 应用该样式: ```xml <activity android:name=".MainActivity" android:theme="@style/notitle"> ... </activity> ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值