Android:主题(Theme)
1.主題和樣式的區別主要區別在?
-
主題不能作用于單個View組建,主題應該對整個應用中的所有Activity起作用或者對指定的Activity起作用。?
-
主題定義的格式應該是改變窗口的外觀格式,例如窗口變體,窗口邊框等。?
?
2.自定義主題?
-
在/res/values/my_style.xml文件增加一個主題,定義主題<style.../>片段如下:?
?
<style name="CrazyTheme" parent="@android:style/Theme.Dialog"> <item name="android:windowNoTitle">true</item> <item name="android:windowFullScreen">true</item> <item name="android:windowFrame">@drawable/window_border</item> <item name="android:windowBackground>@drawable/star</item> </style>?
可以通過parent屬性,繼承原有的主題。?
?
-
在定義上面的主題后,接下來在Java代碼中使用該主圖:?
?
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setTheme(android.R.style.CrazyitTheme); setContentView(R.layout.linear_layout_3); }?
還可以在AndroidManifest.xml中對指定應用、指定Activity應用主題,這樣更簡單:?
?
<application android:theme="@style/CrazyitTheme"> ... ... </application>?
<activity android:theme="@android:style/Theme.Dialog"> </activity>3.Android系統包含了很多系統定義好的theme。總結如下:?
| 主題? | 說明? | 圖例? |
| Theme.NoTitleBar? | 不顯示應用程序標題欄? | ? |
| Theme.NoTitleBar.Fullscreen? | 不顯示應用程序標題欄,并全屏? | ? |
| Theme.Light? | 背景為白色? | ? |
| Theme.Light.NoTitleBar? | 白色背景并無標題欄? | ? |
| Theme.Light.NoTitleBar.Fullscreen? | 白色背景,無標題欄,全屏? | ? |
| Theme.Black? | 背景黑色? | ? |
| Theme.Black.NoTitleBar? | 黑色背景并無標題欄? | ? |
| Theme.Black.NoTitleBar.Fullscreen? | 黑色背景,無標題欄,全屏? | ? |
| Theme.Wallpaper? | 用系統桌面為應用程序背景? | ? |
| Theme.Wallpaper.NoTitleBar? | 用系統桌面為應用程序背景,且無標題欄? | ? |
| Theme.Wallpaper.NoTitleBar.Fullscreen? | 用系統桌面為應用程序背景,無標題欄,全屏? | ? |
| Theme.Translucent? | 透明背景? | ? |
| Theme.Translucent.NoTitleBar? | 透明背景并無標題? | ? |
| Theme.Translucent.NoTitleBar.Fullscreen? | 透明背景并無標題,全屏? | ? |
| Theme.Dialog? | 對話框形式顯示? | ? |
| Theme.Panel? | 面板風格顯示? | ? |
| Theme.Light.Panel? | 平板風格顯示? | ? ? |
?
轉載于:https://www.cnblogs.com/dyllove98/p/3161448.html
總結
以上是生活随笔為你收集整理的Android:主题(Theme)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hadoop4.2HDFS测试报告之四
- 下一篇: Linux CP文件夹略过目录的解决