在過去很多年,我們的PC或者手機裝置都是采用拟物化的設計風格,IOS采用扁平化的特性,android在2014年IO大會上說采用Material Design的設計風格,顯示效果不能過于生硬的轉換,而是平滑,過度的切換方式,避免線性的動畫效果,而是代替以曲線的效果進行展示,并且所有的圖示的動畫切換都應該無縫化切換。
如果想深入了解材料設計即(material Design)的設計:
可以參看如下網址:http://design.1sters.com,尤其是android 應用的UED設計師們,可以看下:
開發中要在libs檔案夾下面中加上android_support_v4.jar包
java.lang.Object
android.view.View
android.view.ViewGroup
android.support.v7.widget.RecyclerView
官網位址:https://developer.android.com/reference/android/support/v7/widget/RecyclerView.html
RecyclerView 一個特點就是,将 layout 抽象成了一個 LayoutManager,RecylerView 不負責子 View 的布局, 我們可以自定義 LayoutManager 來實作不同的布局效果, 目前隻提供了LinearLayoutManager。 LinearLayoutManager 可以指定方向,預設是垂直, 可以指定水準, 這樣就輕松實作了水準的 ListView。
除了LinearLayoutManager還有其他兩種布局管理器:
GridLayoutManager 網格的item
StaggeredGridLayoutManager 交錯的網格item
當然也可以通過內建ResyclerView,layoutManager類來自定義自己的布局管理器。
RecyclerView的使用過程中會使用到一個Adapter:RecyclerView.Adapter,裡面屏蔽了以前寫BaseAdapter的中好多重讀的代碼的編寫,将加載item布局放在onCreateViewHolder(ViewGroup viewGroup, int i)方法中,在onBindViewHolder(ViewHolder viewHolder, int i)中資料加載到item中。用于優化的viewHolder也是繼承自RecyclerView.ViewHolder。
RecyclerView不提供setOnItemClickListener方法,你可以在ViewHolder中添加事件。
RecyclerView之間的分割線:
http://my.oschina.net/xesam/blog/351408
官網位址:https://developer.android.com/reference/android/support/v7/widget/RecyclerView.Adapter.html
關于使用可以參考:
http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/0710/1631.html
http://blog.csdn.net/cym492224103/article/details/41719497
編寫demo:

布局檔案:
HomeAdapter.java
效果: