Android的佈景設計(theme)

佈景是可以大范圍套用的UI美化功能,它的范圍為整個屏幕,從程序編碼的角度來看,佈景可以套用到以下兩個范圍:

整個應用程序(application)
整個Activity
下面是一個套用整個application佈景的例子,自定義一個不顯示窗口標題,並改變應用程序的背景顏色。

延續上個工程,編輯style.xml:
[html] <?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <style name="myText"> 
        <item name="android:textSize">18sp</item> 
        <item name="android:textColor">#00FF00</item> 
    </style> 
    <style name="myButton"> 
        <item name="android:background">#00BFFF</item> 
    </style> 
    <style name="myTheme"> 
        <item name="android:windowNoTitle">true</item>  
        <item name="android:background">#087832</item>        
    </style>  
     
</resources> 
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="myText">
        <item name="android:textSize">18sp</item>
        <item name="android:textColor">#00FF00</item>
    </style>
    <style name="myButton">
        <item name="android:background">#00BFFF</item>
    </style>
    <style name="myTheme">
     <item name="android:windowNoTitle">true</item>
     <item name="android:background">#087832</item>      
    </style>
   
</resources>
修改AndroidManifest.XML,在application中加入theme屬性:
[html] <?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.android" 
    android:versionCode="1" 
    android:versionName="1.0" > 
 
    <uses-sdk android:minSdkVersion="10" /> 
 
    <application 
        android:theme="@style/myTheme" 
        android:icon="@drawable/ic_launcher" 
        android:label="@string/app_name" > 
        <activity 
            android:name=".YypClickListenerActivity" 
            android:label="@string/app_name" > 
            <intent-filter> 
                <action android:name="android.intent.action.MAIN" /> 
 
                <category android:name="android.intent.category.LAUNCHER" /> 
            </intent-filter> 
        </activity> 
    </application> 
 
</manifest> 
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.android"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk android:minSdkVersion="10" />

    <application
        android:theme="@style/myTheme"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:name=".YypClickListenerActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>
程序運行效果:

 

摘自 Young的專欄

發佈留言