Material Design的基本概念
的有关信息介绍如下:
Material Design是Google设计的一套视觉语言,将优先的经典的设计原理与科技创新相结合,为开发者提供一套完成视觉和交互设计规范。移动设备是这套设计语言的基础对象,让用户在不同的平台、不同尺寸的设备上能保持一致的体验。Material Design强调交互上的即时反馈,即对于用户的触控等行为app需要给出即时的反应。同时Material Design要求应用给用户带入感,让用户在使用时是沉浸在当前的应用当中。例如Google给出了沉浸式状态栏等“工具”,希望通过改变StatusBar和NavigationBar来给用户更强的融入感,专注于应用本身提供的内容。Google从动画、颜色、样式、触控反馈、布局等多个方面给出了Material Design的设计要求。无论是单一的控件还是图文布局,Google都给出了明确的设计说明,有兴趣的同学可以去上方提到的官方链接处做进一步了解。
RecyclerView的使用
写Adapter以及其内部类自定义的ViewHolder:
在Activity中的使用,通过设置不同的LayoutManager就可以实现不同的布局效果:
Inflate时的注意事项:
在Adapter中的onCreateViewHolder,需要Inflate布局文件,有三种写法:
写法一般情况下是没有问题的,但是当我们在onBindViewHolder中拿到布局中TextView的LayoutParams的时候,就有可能返回空。写法二直接Crash,因为ItemView布局已经有一个Parent了(Inflate的时候把ItemView添加到Recycleview了),不能再添加一个Parent(Recycleview再次添加ItemView)。写法三是一、二的两种兼容方案,推荐这种写法。
DrawerLayout+NavigationView
使用DrawerLayout实现侧滑:定义一个布局:



