轉載說明:原貼地址:http://blog.csdn.net/a_running_wolf/article/details/50480386
創新互聯專注于竹山網站建設服務及定制,我們擁有豐富的企業做網站經驗。 熱誠為您提供竹山營銷型網站建設,竹山網站制作、竹山網頁設計、竹山網站官網定制、微信小程序服務,打造竹山網絡公司原創品牌,更為您提供竹山網站排名全網營銷落地服務。設置Activity隱藏標題欄、設置Activity全屏顯示在我們開發中會經常用到,畢竟手機屏幕大小有限,有時候是為了顯示更多的信息而舍棄一些不必要的界面開支,首當其沖的就是標題欄,接下來就是狀態欄;有時候是為了界面的簡潔和美觀……不舉例子了,相信你肯定遇到過這樣的需求,直接入正題:
設置隱藏標題欄、全屏顯示常用的有2種方法(和Android開發中大多數屬性的設置方法一樣):
在AndroidManifest.xml文件的相應Activity節點下設置其android:theme屬性值,該屬性值(使用系統theme值,自定義theme除外)一般以"@android:style/Theme."開頭,如android:theme="@android:style/Theme.Light.NoTitleBar.Fullscreen"。下邊就來說說這些theme有哪些不同及各自的效果(以Android4.4.2為例):
我們在界面上添加一個TextView輔助觀察:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="全屏設置及Theme屬性解析"
android:textSize="20sp"/> <!-- 這里只設置了字體大小,并未設置字體顏色 -->
*注意*這里只設置了字體大小并未設置字體顏色,下邊會涉及到。
<activity
android:name="com.wangj.fullscreen.TestActivity"
android:label="@string/title_activity_test"
android:theme="@android:style/下邊說到的theme值"
android:icon="@drawable/ic_launcher"
android:screenOrientation="portrait" > <!-- 添加android:theme屬性 -->
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
Theme.Black黑色主題:標題欄灰色、不顯示icon(即使設置了也不顯示)、有狀態欄、TextView字體反色:
Theme.Black.NoTitleBar:黑色主題、無標題欄、有狀態欄、字體反色:
Theme.Black.NoTitleBar.Fullscreen:黑色主題、無標題欄、無狀態欄、字體反色:
Theme.Light白色主題:標題欄灰色、不顯示icon(即使設置了也不顯示)、有狀態欄、TextView字體黑色:
Theme.Light.NoTitleBar:白色主題、無標題欄、有狀態欄、TextView字體黑色
Theme.Light.NoTitleBar.Fullscreen:白色主題、無標題欄、無狀態欄、Textiew黑字
從上邊可以看出:"Theme"是一個域,"NoTitleBar"指無標題欄,"FullScreen"指無狀態欄。
Theme.Wallpaper:與黑色主題類似,只是北京變為手機墻紙圖片
同樣,Theme.Wallpaper.NoTitleBar:同上,無標題欄
Theme.Wallpaper.NoTitleBar.Fullscreen:同上,無標題欄、無狀態欄
Theme.Translucent:半透明(說是半透明,但看效果是透明的)
同樣的,Theme.Translucent.NoTitleBar:同上,去掉了標題欄
Theme.Translucent.NoTitleBar.Fullscreen:同上,去掉了標題欄和狀態欄
Theme.Holo( | .NoActionBar(難道在Holo中TitleBar改名了) | .NoActionBar .Fullscreen):質樸風,黑色背景藍色標題欄底、標題欄可顯示icon、TextView反色字( | 去掉標題欄 | 去掉標題欄和狀態欄)
Theme.Holo.Light( | .NoTitleBar | .NoTitleBar.Fullscreen):質樸風,銀色背景、標題欄可顯示icon、TextView黑字( | 去掉標題欄 | 去掉標題欄和狀態欄)
Theme.Holo.Wallpaper( | .NoTitleBar | 沒有.NoTitleBar .Fullscreen):墻紙背景質樸風,標題欄有藍色底邊( | 去掉標題欄 | 狀態欄去不掉)
*注意*
沒有Theme.Holo.Black,Theme.Holo默認就是黑色背景的
系統沒有Theme.Holo.Translucent
其實,看完上邊大家只要記住Black、Light、Holo、Translucent、Wallpaper、NoTitleBar、NoActionBar、FullScreen……等關鍵字和其意義(更多關鍵字的功能有待探索),用的時候在系統列表里找相應組合就可以了,比如上邊要隱藏標題欄的、要設置全屏的根據需要找相應的Theme就可以了。至于沒有的也不能自己創造,只能自定義了。
在Activity的onCreate()方法中,在setContent()之前采用以下語句設置
this.requestWindowFeature(Window.FEATURE_NO_TITLE); // 隱藏應用程序的標題欄,即當前activity的labelthis.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN); // 隱藏android系統的狀態欄
*注意*必須在setContent()方法之前設置,否則沒有效果,因為setContent方法設置"View繪制區域"所顯示的組件,而狀態欄、標題欄都是View繪制區之外的區域(應用區、屏幕)
網頁標題:Activity設置全屏顯示的兩種方式及系統自帶theme屬性解析-創新互聯
地址分享:http://m.newbst.com/article46/dsoehg.html
成都網站建設公司_創新互聯,為您提供網站導航、定制網站、靜態網站、微信小程序、面包屑導航、網站設計公司
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯