自定義一個(gè)theme在不同的sdk環(huán)境下繼承不同的值
更新時(shí)間:2013年01月11日 18:04:18 作者:
可能很多在高版本下編繹apk的同學(xué),可能都曾有和我一樣的困惑,就是如何讓低版本的用戶也能有高版本的體驗(yàn)?zāi)?/div>
先說一下自己的一點(diǎn)小心得:
可能很多在高版本下編繹apk的同學(xué),可能都曾有和我一樣的困惑,就是如何讓低版本的用戶也能有高版本的體驗(yàn)?zāi)?,比?.0才能用的holo style.
于是很多人為此求助了很多開源的sdk,比如holo everywhere,sherlockactionbar等等,但是這些庫都很龐大,而且通常添加進(jìn)去以后,在低版本的機(jī)子上也會(huì)嚴(yán)重影響到應(yīng)用運(yùn)行的速度。所以我們?yōu)楹尾幌胂耄覀兊某霭l(fā)點(diǎn)是否也是用戶的需求呢?對(duì)于這個(gè)問題,我女友給了一個(gè)否定的答案,她用的是android 2.1她說,她已經(jīng)習(xí)慣2.1那個(gè)對(duì)話框了,她覺得android對(duì)話框本來就是這樣,4.0的一點(diǎn)也不好看,所以可能對(duì)于很多2.1~2.3的用戶,holo并不是他們需要和追求的必備品。只要用他們熟悉的控件就好沒必要在自己的軟件中強(qiáng)制的讓他們體驗(yàn)4.0的風(fēng)格,否則可能物極必反。而且花心思去自定義原生的alertDialog,真的不如花時(shí)間改進(jìn)其他性能。
所以我覺得正確的做法應(yīng)該是:不去追求自己應(yīng)用在所有的Sdk中表現(xiàn)完全一致,而是從用戶的角度,使用他們熟悉的風(fēng)格。于是才引出了題目中的方法:
技術(shù)的部分就相當(dāng)簡單了:
1.更改sdk至3.0及以上
2.在res的values-v11和values里分別新建一個(gè)styles.xml
3.values-v11下添加 <style name="AppTheme" parent="android:Theme.Holo.Light">
4.values下添加 <style name="AppTheme" parent="@android:style/Theme.Light">
5.manifest.xml下的application下添加 android:theme="@style/Theme.GreenDroid.Light" >
其實(shí)就是自定義一個(gè)theme在不同的sdk環(huán)境下繼承不同的值。
可能很多在高版本下編繹apk的同學(xué),可能都曾有和我一樣的困惑,就是如何讓低版本的用戶也能有高版本的體驗(yàn)?zāi)?,比?.0才能用的holo style.
于是很多人為此求助了很多開源的sdk,比如holo everywhere,sherlockactionbar等等,但是這些庫都很龐大,而且通常添加進(jìn)去以后,在低版本的機(jī)子上也會(huì)嚴(yán)重影響到應(yīng)用運(yùn)行的速度。所以我們?yōu)楹尾幌胂耄覀兊某霭l(fā)點(diǎn)是否也是用戶的需求呢?對(duì)于這個(gè)問題,我女友給了一個(gè)否定的答案,她用的是android 2.1她說,她已經(jīng)習(xí)慣2.1那個(gè)對(duì)話框了,她覺得android對(duì)話框本來就是這樣,4.0的一點(diǎn)也不好看,所以可能對(duì)于很多2.1~2.3的用戶,holo并不是他們需要和追求的必備品。只要用他們熟悉的控件就好沒必要在自己的軟件中強(qiáng)制的讓他們體驗(yàn)4.0的風(fēng)格,否則可能物極必反。而且花心思去自定義原生的alertDialog,真的不如花時(shí)間改進(jìn)其他性能。
所以我覺得正確的做法應(yīng)該是:不去追求自己應(yīng)用在所有的Sdk中表現(xiàn)完全一致,而是從用戶的角度,使用他們熟悉的風(fēng)格。于是才引出了題目中的方法:
技術(shù)的部分就相當(dāng)簡單了:
1.更改sdk至3.0及以上
2.在res的values-v11和values里分別新建一個(gè)styles.xml
3.values-v11下添加 <style name="AppTheme" parent="android:Theme.Holo.Light">
4.values下添加 <style name="AppTheme" parent="@android:style/Theme.Light">
5.manifest.xml下的application下添加 android:theme="@style/Theme.GreenDroid.Light" >
其實(shí)就是自定義一個(gè)theme在不同的sdk環(huán)境下繼承不同的值。
相關(guān)文章
Android實(shí)現(xiàn)動(dòng)態(tài)改變shape.xml中圖形的顏色
這篇文章主要介紹了Android實(shí)現(xiàn)動(dòng)態(tài)改變shape.xml中圖形的顏色,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-03-03Android 6.0上sdcard和U盤路徑獲取和區(qū)分方法
今天小編就為大家分享一篇Android 6.0上sdcard和U盤路徑獲取和區(qū)分方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-08-08Android開發(fā)之Android studio的安裝與使用
本文是此系列文章的第一篇,主要給大家講述的是Android studio的安裝與使用,十分的詳細(xì),有需要的小伙伴可以參考下2016-02-02Android中加載網(wǎng)絡(luò)資源時(shí)的優(yōu)化可使用(線程+緩存)解決
Android 中加載網(wǎng)絡(luò)資源時(shí)的優(yōu)化;基本的思路是線程+緩存來解決,具體解決思路如下,有類似情況的朋友可以參考下哈2013-06-06Android permission denied原因歸納和解決辦法
大家好,本篇文章主要講的是Android permission denied原因歸納和解決辦法,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下哦2021-12-12Android中 動(dòng)態(tài)改變對(duì)話框值的方法
Android Dev-Guide 推薦重寫Activity.onCreateDialog()方法來創(chuàng)建Dialog,這樣Dialog就歸屬于這個(gè)Activity了。2013-04-04Android Studio 3.0 原生支持kotlin 例子詳解
這篇文章主要介紹了 Android Studio 3.0 原生支持kotlin 例子詳解,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2017-05-05