Android中全屏 取消標題欄,TabHost中設置NoTitleBar的三種方法
android默認標題欄比較不好控制,一般要去掉自定義
去掉標題欄的方法:
第一種:也一般入門的時候經常使用的一種方法
requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉標題欄
注意這句一定要寫在setContentView()方法的前面,不然會報錯的
第二種:在AndroidManifest.xml文件中定義
<application android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar">
可以看出,這樣寫的話,整個應用都會去掉標題欄,如果只想去掉某一個Activity的標題欄的話,可以把這個屬性加到activity標簽里面
注:這種方法在android4.1.1的三星i9300手機上TabHost中不起作用,需要采用第一種方式加上setTheme一起控制。
setTheme(android.R.style.Theme_Black_NoTitleBar);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.api_tab_host);
第三種:自定義樣式,在一般的應用中不常用,在res/values目錄下面新建一個style.xml的文件
例如:
<?xml version="1.0" encoding="UTF-8" ?>
<resources>
<style name="notitle">
<item name="android:windowNoTitle">true</item>
</style>
</resources>
相當於一個主題,然后在AndroidManifest.xml文件中定義
<application android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@style/notitle">
達到去掉標題欄的效果
第一種有的時候我們會看到,會先出現標題欄,然后再消失,因為是在activity的oncreate方法中定義的。
第二種相對第一種比較好一些,不會出現這種情況。
第三種可以把功能分開,便於維護和擴展,但比較麻煩。
------------------------------------------------------
全屏的方法:
第一種
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
第二種
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
第三種
application android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@style/fullscreem"