众所周知,google官方希望用MaterialDesign的设计风格给Android用户带来一直的体验,并且MD的设计确实使Android得人机交互体验上升了许多,因此不少项目都采用MD的设计风格,但在低于5.0版本实现有一定麻烦。今天拿一个很全面的dialog为例。
所依赖地址:https://github.com/drakeet/MaterialDialog
login.xml
所依赖地址:https://github.com/drakeet/MaterialDialog
实现代码:
TableLayout loginForm = (TableLayout) getLayoutInflater().inflate(R.layout.login,null);
MaterialDialog materialDialog = new MaterialDialog(this)
.setCanceledOnTouchOutside(true)
.setContentView(loginForm)
.setTitle("login")
.setPositiveButton("Ok",null)
.setNegativeButton("No",null);
materialDialog.show();
login.xml
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<EditText
android:id="@+id/et_username"
android:hint="用户名"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<EditText
android:id="@+id/et_userpass"
android:hint="密码"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPassword"/>
</TableLayout>
效果: