Chinaunix首页 | 论坛 | 博客
  • 博客访问: 341583
  • 博文数量: 89
  • 博客积分: 5152
  • 博客等级: 大校
  • 技术积分: 1155
  • 用 户 组: 普通用户
  • 注册时间: 2006-02-25 15:12
文章分类

全部博文(89)

文章存档

2012年(1)

2011年(5)

2010年(14)

2009年(69)

我的朋友

分类: LINUX

2009-07-16 13:45:49

上一節提到佈景(theme)是可以大範圍套用的UI美化功能,其套用範圍為「整個螢幕」,從程式碼的角度來看,佈景可以套用到以下二個範圍:

  • 整個應用程式(application)
  • 整個activity

接下來,我們以一個很簡單的例子,來說明如何套用佈景到application。在一些應用,我們可能不想要顯示視窗標題(title),怎麼做出這個功能呢?利用佈景設定的方式即可達成。以下是實作方法。

在styles.xml裡加入以下內容:


<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="myTheme">
        <item name="android:windowNoTitle">true
    </style>
</resources>



修改AndroidManifest.xml,在標籤裡加上「theme」屬性:



<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android=""
      package="com.moko.hellotheme"
      android:versionCode="1"
      android:versionName="1.0.0">
    <application android:icon="@drawable/icon" android:label="@string/app_name"
        android:theme="@style/myTheme">
        <activity android:name=".HelloTheme"
                  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>



執行結果:




圖1: HelloTheme的執行結果
在這個範例裡,我們並沒有修改任何的程式碼,其原理是透過佈景設定的方法。定義佈景的方式與定義樣式(styles)相同,同樣是在styles.xml裡以標籤來定義。
以下是使用HelloTheme的說明:

1. 的name屬性為android:windowNoTitle時,表示定義是否要顯示視窗標題,在此設定為true,表示不要有視窗標題

2. 在標籤裡加上theme屬性,將佈景套用到應用程式
佈景除了能套用到應用程式外,也能套用到activity。如何套用佈景到activity呢?只要在裡加入theme屬性即可,做法與相同。

阅读(739) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~