下面应用RecyclerView和CardView控件实现新闻卡片。
(1)在Android 2.3中创建应用项目:RecyclerView_Card。需要在项目的build.gradle(在Project模式下内层的build.gradle)添加相应的依赖库。
打开build.gradle文件,在dependencies闭包中添加如下内容。
(2)主布局文件activity_main.xml中包含RecyclerView控件,代码如下。
(3)新建RecyclerView显示项的布局文件res/layout/news_item.xml,如图5-17所示,显示容器项是一个CardView。
图5-17 RecyclerView显示项的布局文件
(4)新建新闻卡片的布局文件res/layout/activity_news.xml,如图5-18所示,显示容器项是一个CardView。
图5-18 新闻卡片的布局文件
(5)定义数据类。这里建立一个新闻类,implements Serialzable是为了在Intent中能够直接传递News对象,文件名为News.Java,代码如下。
(www.xing528.com)
(6)自定义Adapter。这部分内容比较重要,如果对ListView自定义Adapter比较熟悉,将很容易看懂。相比而言,RecyclerViewAdapter中必须要实现ViewHolder类,然后需要覆写几个方法,唯一复杂的地方是在onBingViewHolder方法中为两个按钮和CardView实现单击事件,跳转到新闻详细页面(NewsActivity)或者弹出分享。文件名为RecyclerViewAdapter.java,代码如下。
(7)创建NewsActivity类,用来显示新闻详细内容,布局使用res/layout/activity_news.xml,文件名为NewsActivity.java,代码如下。
(8)主界面中的Activity文件MainActivity.java的代码如下。
(9)RecyclerView_Card项目的运行结果如图5-19所示。
图5-19 RecyclerViewCard项目的运行结果
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。