用安卓5.0新特性打造酷炫的登录注册界面

先上效果图

用安卓5.0新特性打造酷炫的登录注册界面_第1张图片
login.gif
  • 5.0的Material design新特性已经出来很长时间了,相信很多朋友也开始在项目中使用了,常用的ToolBar,Snacker,TextInputLayout,Floating Action Button界面操作按钮,TabLayout滑动切换布局,NavigationView导航抽屉等相信在网上随便一搜都是一大堆使用教程。
  • 之前看到这个酷炫的登录注册界面便在自己的项目中实现了下,这里拿出来和大家分享分享以及使用时的注意事项。

  • 源码链接 https://github.com/Allenhan123/MaterialLogin


使用过程中的知识点以及注意事项:

  • 因为至少是安卓5.0,所以:minSdkVersion 21

  • 使用到的控件:CardView,TextInputLayout,FloatingActionButton

登录界面:

用安卓5.0新特性打造酷炫的登录注册界面_第2张图片
登录界面.png
  • android5.0 引入了Z轴的概念,所以有两个新属性值得注意:
    • android:elevation 设置该组件“浮”起来的高度,设置该属性可以让该组件呈现3D效果。
    • android:translationZ 设置该组件在Z方向(垂直屏幕方向)上的位移。
用安卓5.0新特性打造酷炫的登录注册界面_第3张图片
Material Design.jpg
  • 跳转到注册界面使用到了新的转场动画 -ActivityOptions,可以参考这篇博客http://blog.csdn.net/qibin0506/article/details/48129139/

  • 跳转代码

getWindow().setExitTransition(null);
getWindow().setEnterTransition(null);
if (Build.VERSION.SDK_INT >=Build.VERSION_CODES.LOLLIPOP) {              
   ActivityOptions options =ActivityOptions.makeSceneTransitionAnimation(this, fab, fab.getTransitionName());    
   startActivity(new Intent(this, RegisterActivity.class), options.toBundle());
} else {    
   DevUtil.gotoActivity(this, RegisterActivity.class);
}

注册界面

用安卓5.0新特性打造酷炫的登录注册界面_第4张图片
注册界面.png
  • XML布局注意点:

  • 清单文件中android:theme="@style/Translucent"

  • 布局跟标签中:tools:context="com.****.****.Activity.LoginActivity"这个属性

  • tools:context
    这个属性通常在一个布局XML文件的根元素中设置,记录了这个布局关联到哪一个activity(因为一个布局在设计时可以被多个布局使用),当前的Layout所在的渲染上下文是activity name对应的那个activity,如果这个activity在manifest文件中设置了Theme,那么会根据这个Theme来渲染你当前的Layout。

  • 代码中的关键就是动画 - Transition

  • 当一个场景改变的时候,transition主要负责:

    • 捕捉每个View在开始场景和结束场景时的状态。
    • 根据两个场景(开始和结束)之间的区别创建一个Animator。
  • Activity Transition提供了三种Transition类型:

    • 进入:一个进入的过渡(动画)决定activity中的所有的视图怎么进入屏幕。
    • 退出:一个退出的过渡(动画)决定一个activity中的所有视图怎么退出屏幕。
    • 共享元素:一个共享元素过渡(动画)决定两个activities之间的过渡,怎么共享(它们)的视图。
  • 这里我们用的是 共享元素动画(使用方法):

    • 定义你的过渡动画XML资源
    • 使用android:transitionName属性给两个布局中的共享元素指定一个相同的名字
    • 使用ActivityOptions.makeSceneTransitionAnimation() 方法

至此酷炫的登录注册界面就打造好了,感兴趣的朋友可以在项目中使用。


用安卓5.0新特性打造酷炫的登录注册界面_第5张图片
喜欢就点个赞呗

你可能感兴趣的:(用安卓5.0新特性打造酷炫的登录注册界面)