android去掉标题多种方法

方法一:也一般入门的时候经常使用的一种方法在setContentView()方法的前面插入代码:

requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏 

  1. package com.example.helloword;  
  2.   
  3. import android.os.Bundle;  
  4. import android.app.Activity;  
  5. import android.view.Menu;  
  6. import android.view.Window;  
  7. import android.view.WindowManager;  
  8.   
  9. public class MainActivity extends Activity {  
  10.   
  11.     @Override  
  12.     protected void onCreate(Bundle savedInstanceState) {  
  13.         super.onCreate(savedInstanceState);  
  14.         requestWindowFeature(Window.FEATURE_NO_TITLE);  
  15.         getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,   
  16.                 WindowManager.LayoutParams.FLAG_FULLSCREEN);  
  17.         setContentView(R.layout.activity_main);  
  18.     }  
  19.   
  20. }  

方法二:在AndroidManifest.xml文件中定义去掉整个应用的标题栏:<application    android:icon="@drawable/icon"    android:label="@string/app_name"    android:theme="@android:style/Theme.NoTitleBar">不过有时候不需要去掉整个程序的应用,只想去掉一个的时候就在Activity中。 

  1. <application  
  2.     android:allowBackup="true"  
  3.     android:icon="@drawable/ic_launcher"  
  4.     android:label="@string/app_name"  
  5.     android:theme="@android:style/Theme.NoTitleBar" >  
  6.     <activity  
  7.         android:name="com.example.helloword.MainActivity"  
  8.         android:label="@string/app_name" >  
  9.         <intent-filter>  
  10.             <action android:name="android.intent.action.MAIN" />  
  11.   
  12.             <category android:name="android.intent.category.LAUNCHER" />  
  13.         </intent-filter>  
  14.     </activity>  
  15. </application>  


方法三:在res/values目录下面新建一个style.xml的文件这种方法是有经验的开发者最喜欢的方法,因为它把功能分开的;对于后期的维护非常方便。个人建议用第三种方法:

styleAndroidManifest.xml

<?xml version="1.0" encoding="UTF-8" ?>

<resources>    

<style name="concealTitle">        

<item name="android:windowNoTitle">true</item>   

 </style>

</resources>

定义完了一个style,接下来就是在AndroidManifest.xml中使用了:<application    android:icon="@drawable/icon"    android:label="@string/app_name"    android:theme="@style/concealTitle"> 

  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2. <resources>      
  3.     <style name="concealTitle">          
  4.         <item name="android:windowNoTitle">true</item>     
  5.     </style>  
  6. </resources>  

  1. <application  
  2.     android:allowBackup="true"  
  3.     android:icon="@drawable/ic_launcher"  
  4.     android:label="@string/app_name"  
  5.     android:theme="@style/concealTitle" >  
  6.     <activity  
  7.         android:name="com.example.helloword.MainActivity"  
  8.         android:label="@string/app_name" >  
  9.         <intent-filter>  
  10.             <action android:name="android.intent.action.MAIN" />  
  11.   
  12.             <category android:name="android.intent.category.LAUNCHER" />  
  13.         </intent-filter>  
  14.     </activity>  
  15. </application>  

### 去除Android应用中的标题栏 在Android开发中,可以通过多种方式去除标题栏。以下是一些常见的方法及其代码示例。 #### 方法一:通过主题配置移除标题栏 可以通过自定义应用的主题来移除标题栏。具体来说,将`android:windowNoTitle`属性设置为`true`即可[^1]。此外,如果希望进一步移除动作栏(Action Bar),可以将`android:windowActionBar`属性设置为`false`。 ```xml <style name="AppTheme.NoTitleBar" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="android:windowNoTitle">true</item> <item name="android:windowActionBar">false</item> </style> ``` 然后,在`AndroidManifest.xml`文件中为特定的Activity应用该主题: ```xml <activity android:name=".MainActivity" android:theme="@style/AppTheme.NoTitleBar" /> ``` #### 方法二:通过代码动态移除标题栏 如果需要在运行时动态移除标题栏,可以在Activity的`onCreate()`方法中调用`requestWindowFeature()`方法,并传入`Window.FEATURE_NO_TITLE`参数[^3]。 ```java import android.os.Bundle; import android.view.Window; import androidx.appcompat.app.AppCompatActivity; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { requestWindowFeature(Window.FEATURE_NO_TITLE); // 移除标题栏 super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } } ``` 对于Kotlin开发者,可以使用如下代码实现相同效果: ```kotlin import android.os.Bundle import androidx.appcompat.app.AppCompatActivity class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { requestWindowFeature(android.view.Window.FEATURE_NO_TITLE) // 移除标题栏 super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) } } ``` #### 方法三:全屏模式下隐藏状态栏和标题栏 如果希望同时隐藏状态栏和标题栏以实现全屏效果,可以使用`WindowManager.LayoutParams.FLAG_FULLSCREEN`标志[^3]。 ```java import android.os.Bundle; import android.view.WindowManager; import androidx.appcompat.app.AppCompatActivity; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); // 设置全屏 setContentView(R.layout.activity_main); } } ``` 对于Kotlin开发者,可以使用如下代码: ```kotlin import android.os.Bundle import android.view.WindowManager import androidx.appcompat.app.AppCompatActivity class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN) // 设置全屏 setContentView(R.layout.activity_main) } } ``` #### 注意事项 - 如果使用了自定义主题,请确保其父主题不包含标题栏或动作栏。 - 在某些情况下,可能需要结合`FLAG_LAYOUT_NO_LIMITS`标志以避免布局被状态栏遮挡[^2]。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值