多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 互聯網 > Android Material Design-Maintaining Compatibility(保持兼容性)-(七)

Android Material Design-Maintaining Compatibility(保持兼容性)-(七)

來源:程序員人生   發布時間:2014-11-13 09:12:52 閱讀次數:3673次

轉載請注明出處:http://blog.csdn.net/bbld_/article/details/40634829

 

1些materialdesign中的功能像material主題和自定義activity的過渡只能在Android 5.0(API級別21)或以上的系統版本中才能使用。但是你可以設計你的app去使用那些功能,不管在支持materialdesign的裝備上亦或是初期的Android版本上。

 

定義可選的樣式

你可以配置你的app去使用material design在支持它的裝備上,在初期的Android版本中使用舊的主題:

1.        定義1個主題,它繼承1個舊的主題(像Holo),放在res/values/styles.xml

2.        定義1個相同名字主題,繼承material主題,放在res/values⑵1/styles.xml

3.        在manifest文件中設置這個主題為你的app主題。

注意:如果你的app使用了material主題但是沒有提供1個可替換的主題,你的app將沒法在Android 5.0之前的系統中運行。

 

提供可替換的布局

如果你根據設計準則不使用任何Android5.0引入的新的XML的屬性去設計你的布局,他們能在Android的初期版本上運行。否則,你可以提供可選擇的布局。你也能夠提供可替換的布局,以自定義你的app看起來是在初期的Android版本上。

為Android 5.0(API級別21)或以上系統創建布局時則布局文件放在res/layout-v21/文件夾里,初期Android版本的可替換的布局則放在res/layout/文件夾里。例如,res/layout/my_activity.xmlres/layout-v21/my_activity.xml的1個可替換的布局

為了不重復的代碼,在res/values/里定義你的樣式資源,為新的API修改的樣式則放在res/values-v21/文件夾里,并且使用樣式繼承,在res/values/中定義基本的樣式,在res/values-v21/.中繼承基本的樣式。

 

使用支持庫

v7支持庫r21及以上的版本包括以下的material design的特點:

l  當你利用Theme.AppCompat的主題時,1些控件具有materialdesign style的特點。

l  Theme.AppCompat具有Color palette theme屬性。

l  RecyclerView控件顯示數據集合。

l  CardView控件創建卡片。

l  Palette類去從圖片中提取突出的色彩。

 

系統控件

Theme.AppCompat主題為這些控件提供了material design styles:

l  EditText

 Spinner

 CheckBox

l  RadioButton

 SwitchCompat

 CheckedTextView

 

色彩調色板

為了在Android v7支持庫中取得material design styles和自定義調色板,使用1個Theme.AppCompat的主題:

<!-- extend one of the Theme.AppCompat themes --> <style name="Theme.MyTheme" parent="Theme.AppCompat.Light"> <!-- customize the color palette --> <item name="colorPrimary">@color/material_blue_500</item> <item name="colorPrimaryDark">@color/material_blue_700</item> <item name="colorAccent">@color/material_green_A200</item> </style>


列表和卡片

RecyclerViewCardView控件可以通過Android v7支持包在初期的Android版本上使用。但是有這些限制:

l  CardView回退到使用有規則的陰影通過使用額外的填充。

l  CardView不會裁剪它的子視圖,使用圓角相交。


依賴

要在早于Android5.0(API級別21)的系統中使用這些功能,需添加Android v7支持庫到你的項目中,下面是添加Gradle依賴

dependencies { compile 'com.android.support:appcompat-v7:21.0.+' compile 'com.android.support:cardview-v7:21.0.+' compile 'com.android.support:recyclerview-v7:21.0.+' }

補充:Eclipse中添加依賴在前面的博客中我已做了說明(Android Material Design-Creating Lists and Cards(創建列表和卡片)-(3))。


檢查系統版本

以下功能僅適用于Android的5.0(API等級21)以上:

l  Activity transitions(Activity的過渡轉換)

l  Touch feedback(觸摸反饋)

l  Reveal animations(顯示、揭穿動畫)

l  Path-based animations(基于路徑的動畫)

l  Vector drawables(矢量繪圖資源)

l  Drawable tinting(Drawable著色)

為了保持與初期Android版本的兼容性,在調用這些API之前檢查系統的版本:

 

// Check if we're running on Android 5.0 or higher if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { // Call some material design APIs here } else { // Implement this feature without material design }

 注意:要指定你的app所能支持的版本,使用在你的manifest文件中android:minSdkVersionandroid:targetSdkVersion屬性去聲明。要在Android 5.0中需要使用material desing的功能,設置android:targetSdkVersionattribute屬性的值為21.。更多的信息請參閱<uses-sdk>的API文檔說明。

 

 

-----------------------------------------------------------------  Material Design系列的翻譯完結  ----------------------------------------------------------------------

 

 



生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 午夜香蕉网 | 日本一区二区三区四区在线观看 | 黄色的网站免费观看 | 精品国产一区二区三区不卡在线 | 国产五月天在线 | 日韩欧美精品综合一区二区三区 | 亚洲国产精品乱码一区二区三区 | 欧美性猛交xxxx免费看 | 91porn国产在线观看 | 成人不卡 | 最近中文字幕3 | 欧美日韩在线观看一区 | 在线观看亚洲免费视频 | 久久久久国产一级毛片高清版 | 国产一区二区三区四区在线观看 | 欧美日韩亚洲综合在线一区二区 | 日本中文在线播放 | 亚洲九色| 一级一级 a爱片免费视频 | 羞羞视频免费观看网站 | 精品日韩一区二区三区 | 手机看片福利日韩欧美看片 | 国产高清一区 | 日韩欧美在线第一页 | 免看一级a毛片一片成人不卡 | 欧美精品亚洲 | 亚洲一区二区三区久久久久 | 亚洲综合久久成人69 | 日本黄色免费片 | 久久在线免费 | 尤物精品在线观看 | xxxx欧美 | 国产精品久久久久无码av | 日韩一区二区三区四区不卡 | 免费区一级欧美毛片 | 免费一级做a爰片久久毛片潮喷 | 在线观看日本永久免费视频 | 五月天视频在线 | 成人亚洲在线观看 | 亚洲福利 | 免费福利在线 |