Android零基礎(chǔ)入門|CardView簡(jiǎn)單實(shí)現(xiàn)卡片式布局!
還記得我們一共學(xué)過了多少UI控件了嗎?都掌握的怎么樣啊。
安卓中一些常用控件學(xué)習(xí)得差不多了,今天再來學(xué)習(xí)一個(gè)新的控件CardView,在實(shí)際開發(fā)中也有非常高的地位。
一、CardView簡(jiǎn)介
CardView是Android 5.0系統(tǒng)引入的控件,相當(dāng)于FragmentLayout布局控件然后添加圓角及陰影的效果。
CardView繼承自Framelayout,所以FrameLayout所有屬性CardView均可以直接拿來用,不過CardView還有自己獨(dú)有的屬性,常用屬性如下:
app:cardElevation:設(shè)置陰影的大小。
app:cardMaxElevation:設(shè)置陰影最大高度。
app:cardBackgroundColor:設(shè)置卡片的背景色。
app:cardCornerRadius:設(shè)置卡片的圓角大小。
app:contentPadding:設(shè)置內(nèi)容的padding。
app:contentPaddingTop:設(shè)置內(nèi)容的上padding。
app:contentPaddingLeft:設(shè)置內(nèi)容的左padding。
app:contentPaddingRight:設(shè)置內(nèi)容的右padding。
app:contentPaddingBottom:設(shè)置內(nèi)容的底padding。
app:cardUseCompatPadding:是否使用CompatPadding。
app:cardPreventConrerOverlap:是否使用PreventCornerOverlap。
這里有一點(diǎn)需要值得注意,之前學(xué)習(xí)到的控件屬性都是android:開頭的,而這里所列的屬性是app:開頭的,如果繼續(xù)使用默認(rèn)的會(huì)提示找不見對(duì)應(yīng)屬性,需要我們定義一個(gè)app命名空間,在布局文件中需要加入xmlns:app="http://schemas.android.com/apk/res-auto"語句,具體見后續(xù)案例,這里不作過多介紹,后續(xù)再詳細(xì)學(xué)習(xí)。
二、CardView示例1
接下來通過幾個(gè)簡(jiǎn)單的小示例程序來進(jìn)一步學(xué)習(xí)CardView。
繼續(xù)使用WidgetSample工程的advancedviewsample模塊,首先需要添加支持庫,具體操作步驟同之前分享的揭開RecyclerView廬山真面目,這里不再重復(fù)分享。這次輸入的關(guān)鍵字是cardview,即可完成CardView依賴庫的添加。
在src/main/res/layout/目錄下創(chuàng)建cardview_layout.xml文件,在其中填充如下代碼片段:
然后新建CardViewActivity.java文件,加載上面的布局文件,填充的代碼如下:
修改啟動(dòng)的Activity,運(yùn)行程序可以看到下圖所示效果。
三、CardView示例2
CardView被包裝為一種布局,并且經(jīng)常在ListView和RecyclerView的Item布局中,作為一種容器使用。CardView應(yīng)該被使用在顯示層次性的內(nèi)容時(shí);在顯示列表或網(wǎng)格時(shí)更應(yīng)該被選擇,因?yàn)檫@些邊緣可以使得用戶更容易去區(qū)分這些內(nèi)容。
接下來簡(jiǎn)單定義一個(gè)CardView的item項(xiàng),并在Java代碼中修改CardView的屬性,關(guān)于結(jié)合ListView和RecyclerView的部分比較簡(jiǎn)單,這里不做過多介紹。
繼續(xù)再上一個(gè)案例的基礎(chǔ)上進(jìn)行修改,修改后的cardview_layout.xml文件代碼如下:
繼續(xù)修改CardViewActivity.java文件,獲得CardView組件并動(dòng)態(tài)修改其屬性,修改后的代碼如下:
重新運(yùn)行程序,可以得到下圖所示效果。
至此,CardView的學(xué)習(xí)到此告一段落,是不是發(fā)現(xiàn)使用起來也非常簡(jiǎn)單,更多用法建議自己去摸索。
今天就先到這里,如果有問題歡迎留言一起探討,共同成長(zhǎng)!
此文章版權(quán)為分享達(dá)人秀——鑫鱻所有,若需轉(zhuǎn)載請(qǐng)聯(lián)系作者授權(quán),特此聲明!
往期總結(jié)分享:
第1節(jié):Android的前世今生
第2節(jié):Android 系統(tǒng)架構(gòu)和應(yīng)用組件那些事
第3節(jié):帶你一起來聊一聊Android開發(fā)環(huán)境
第4節(jié):正確安裝和配置JDK
第5節(jié):善用ADT Bundle
第6節(jié):配置優(yōu)化SDK Manager
第7節(jié):搞定Android模擬器
第8節(jié):HelloWorld,第一趟旅程出發(fā)點(diǎn)
第9節(jié):Android實(shí)戰(zhàn),不懂代碼也可以開發(fā)
第10節(jié):開發(fā)IDE迎來Android Studio
第11節(jié):運(yùn)行Android Studio工程
第12節(jié):熟悉Android Studio界面
第13節(jié):Android Studio個(gè)性化配置
第14節(jié):使用高速Genymotion
第15節(jié):掌握Android Studio項(xiàng)目結(jié)構(gòu)
第16節(jié):Android用戶界面開發(fā)概述
第17節(jié):文本框TextView
第18節(jié):輸入框EditText
第19節(jié):按鈕Button
第20節(jié):選擇控件CheckBox和RadioButton
第21節(jié):開關(guān)控件ToggleButton和Switch
第22節(jié):圖像視圖ImageView
第23節(jié):ImageButton和ZoomButton
第24節(jié):自定義View簡(jiǎn)單使用
第25節(jié):簡(jiǎn)單且最常用的LinearLayout
第26節(jié):layout_gravity和gravity大不同
第27節(jié):正確使用padding和margin
第28節(jié):輕松掌握RelativeLayout相對(duì)布局
第29節(jié):善用TableLayout表格布局
第30節(jié):兩分鐘掌握FrameLayout幀布局
第31節(jié):少用的AbsoluteLayout絕對(duì)布局
第32節(jié):新推出的GridLayout網(wǎng)格布局
第33節(jié): Android事件處理概述
第34節(jié):Android中基于監(jiān)聽的事件處理
第35節(jié):Android中基于回調(diào)的事件處理
第36節(jié):Android系統(tǒng)事件的處理
第37節(jié):初識(shí)ListView
第38節(jié):初識(shí)Adapter
第39節(jié):ListActivity和自定義列表項(xiàng)
第40節(jié):自定義ArrayAdapter
第41節(jié):使用SimpleAdapter
第42節(jié):自定義BaseAdapter
第43節(jié):ListView優(yōu)化和列表首尾使用
第44節(jié):ListView數(shù)據(jù)動(dòng)態(tài)更新
第45節(jié):網(wǎng)格視圖GridView
第46節(jié):列表選項(xiàng)框Spinner
第47節(jié):AutoCompleteTextView自動(dòng)文本
第48節(jié):ExpandableListView多級(jí)選擇
第49節(jié):AdapterViewFlipper圖片輪播
第50節(jié):StackView卡片堆疊
第51節(jié):進(jìn)度條ProgressBar
第52節(jié):自定義炫酷進(jìn)度條
第53節(jié):SeekBar和RatingBar
第54節(jié):視圖切換組件ViewSwitcher
第55節(jié):ImageSwitcher和TextSwitcher
第56節(jié):翻轉(zhuǎn)視圖ViewFlipper
第57節(jié):DatePicker和TimePicker選擇器
第58節(jié):數(shù)值選擇器NumberPicker
第59節(jié):常用三大Clock時(shí)鐘組件
第60節(jié):CalendarView和Chronometer
第61節(jié):滾動(dòng)視圖ScrollView
第62節(jié):搜索框組件SearchView
第63節(jié):值得借鑒學(xué)習(xí)的選項(xiàng)卡TabHost
第64節(jié):揭開RecyclerView廬山真面目
第65節(jié):RecyclerView分割線開發(fā)技巧
第66節(jié):RecyclerView點(diǎn)擊事件處理
第67節(jié):RecyclerView數(shù)據(jù)動(dòng)態(tài)更新
第68節(jié):RecyclerView添加首尾視圖
第69節(jié):ViewPager快速實(shí)現(xiàn)引導(dǎo)頁
第70節(jié):ViewPager打造TabHost效果
