【文章摘要】
近些年,隨著移動終端設備的不斷發展,基于Android系統的程序開發開始風靡全球。在Android系統開發中,主題的設置通常作為UI設計的一部分備受程序開發人員的關注。通過合理的主題設置,能夠給用戶提供滿意的界面,提高用戶的滿意度。Android應用開發中,UI設計師通常用風格和主題來統一格式化各種屏幕和UI元素。
【關鍵詞】
主題設置;Android;應用開發
近些年,隨著移動終端設備的不斷發展,基于Android系統的程序開發開始風靡全球。在Android系統開發中,主題的設置通常作為UI設計的一部分備受程序開發人員的關注。通過合理的主題設置,能夠給用戶提供滿意的界面,提高用戶的滿意度。
Android應用開發中,UI設計師通常用風格和主題來統一格式化各種屏幕和UI元素。
1 Android應用開發中主題的設置
android有兩種設置主題的方法,一種就是通過修改manifest文件,一種就是在通過修改代碼;主題的自定義設置和樣式的自定義設置類似。
1.1 在manifest當中設置主題
為了程序當中所有的Activity當中使用主題,可以打開AndroidManifest.xml 文件,編輯
1.2 在程序當中設置主題
如果需要的話,開發人員可以在Activity當中通過使用方法setTheme()來加載一個主題。注意,如果這么做的話,應該初始化任何View之前設置主題。比如,在調用setContentView(View)和inflate(int,ViewGroup)方法前。這保證系統將當前主題應用在所有的UI界面。例子如下:
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
...
setTheme(android.R.style.Theme_Light);
setContentView(R.layout.linear_layout_3);
}
2 應用舉例
2.1 定義主題
在res/values/style.xml添加如下代碼:
<!--
說明:
以上建立了兩個主題樣式,第一個是對話框的主題,第二個是壁紙的主題。僅為例子使用,沒有更改。想要更改某些屬性可以參照:android sdk目錄\data\res\values 目錄下的themes.xml。
2.2 設置主題
通過修改mainfest文件的方式來設置主題,首先打開到mainfest.xml文件,對
在java代碼里我們實現一下主題的設定,主要代碼如下:
//讀取主題 如果讀取失敗,則設置為系統默認的主題
theme = getSharedPreferences(\"cons\",MODE_PRIVATE).getInt(\"theme\",
android.R.style.Theme);
//設定主題
setTheme(theme);
//調用父類方法,一定要放到設定主題之后
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button btn =(Button)findViewById(R.id.btn1);
//通過點擊,切換主題。點擊后要重起應用能看到效果
btn.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v){
if(R.style.MyTheme1 != theme){
//將主題保存到sharedPreference中,以便下次啟動設置主題時讀取
sf.getSharedPreferences(\"cons\",Activity.MODE_PRIVATE).edit()
.putInt(\"theme\",R.style.MyTheme1).commit();
} else {
sf.getSharedPreferences(\"cons\",Activity.MODE_PRIVATE).edit()
.putInt(\"theme\",R.style.MyTheme2).commit();
}
//退出應用
android.os.Process.killProcess(android.os.Process.myPid());
}
});
【參考文獻】
[1]武海峰.移動應用在Android平臺上的部署[J].程序員.2009(05)
[2]陳璟,陳平華,李文亮.Android內核分析[J].現代計算機(專業版).2009(11)