Theme也是一中包含一种或者多种组件属性的集合,Theme可以应用在某一个Activity或者多个Activity中。通过<style>标签定义,标签内部,声明一个或者多个<item>,每个<item>可以定义一个属性名字以及其对应的值,为<style>添加一个全局唯一的名字,可以在AndroidManifest.xml中通过<activity android:theme="@style/customTheme"为某个Activity添加该主题。
/res/values/strings.xml代码如下:
- <?xml version="1.0" encoding="utf-8"?>
- <resources>
- <string name="app_name">Theme</string>
- <style name="customTheme">
- <item name="android:windowNoTitle">false</item>
- <item name="android:textColor">#ffff0000</item>
- <item name="android:background">#fff0f0f0</item>
- <item name="android:textSize">18dp</item>
- </style>
- </resources>
/res/layout/main.xml代码如下:
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:orientation="vertical" >
- <TextView
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="Theme 示例" />
- </LinearLayout>
Java代码如下:
- package com.demo.android.theme;
- import android.app.Activity;
- import android.os.Bundle;
- public class ThemeActivity extends Activity {
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- //加载主题
- this.setTheme(R.style.customTheme);
- setContentView(R.layout.main);
- }
- }