Material Design介绍
Material Design是由Google推出的一种设计语言,旨在为不同平台提供更一致、更广泛的外观和感觉。它首次在2014年的Google I/O开发者大会上发布,并成为Android应用程序设计的核心原则
特点:
材质特性:将界面元素视为具有深度和阴影的物理材质,模拟现实世界的材质特性。如通过阴影和高光效果来区分不同层级的元素,赋予界面深度和层次感。
统一性:提供了一套统一的设计语言和视觉风格,确保不同界面和产品之间的一致性。
自然交互:强调自然流畅的动效设计,让用户的操作体验更加直观和顺畅。动画应当自然流畅,帮助用户理解界面元素的变化和操作反馈。
响应式设计:支持跨设备的响应式设计,确保界面在不同尺寸屏幕上都能保持良好的展现效果。界面能够自动适应不同设备、屏幕尺寸和方向,无论是在手机、平板还是不同尺寸的屏幕上,应用都能保持良好的布局和可用性。
组件
Material Design的组件非常丰富,涵盖了从基础元素到复杂交互的各个方面。以下我将介绍一个组件并加以实现。
Toolbar
是Android 5.0(Lollipop)引入的一个Material Design风格的导航控件,旨在提供比传统的ActionBar更灵活和强大的功能。
添加依赖
dependencies {
val activity_version = "1.9.2"
// Java language implementation
implementation("androidx.activity:activity:$activity_version")
// Kotlin
implementation("androidx.activity:activity-ktx:$activity_version")
}
添加到 Layout.xml文件中
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize" />
实现效果如下:
按钮:
MaterialButton:
是一个功能强大且易于使用的UI组件,它提供了多样化的样式和大小、丰富的自定义选项、交互状态的支持、一致的用户体验以及高度的可定制性等特点,可以满足开发者在应用程序开发中对于按钮的各种需求。
添加到 Layout.xml文件中
<com.google.android.material.button.MaterialButton
android:id="@+id/button_first"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/Material_Button" />
实现效果如下:
悬浮响应按钮(Floating Action Button, FAB):
圆形的漂浮按钮,有一系列特殊动作,通常用于促进用户操作。
添加到 Layout.xml文件中
<com.google.android.material.floatingactionbutton.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_marginBottom="16dp"
app:srcCompat="@android:drawable/ic_dialog_email" />
实现效果如下:
Snackbar:
Android开发中一个用于显示简短消息反馈给用户的UI组件。一般可与触发按钮后同时触发。
在MainActivity添加
binding.fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view