Osheep

时光不回头,当下最重要。

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

先上效果图

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

login.gif
  • 5.0的Material design新特性已经出来很长时间了,相信很多朋友也开始在项目中使用了,常用的ToolBar,Snacker,TextInputLayout,Floating Action Button界面操作按钮,TabLayout滑动切换布局,NavigationView导航抽屉等相信在网上随便一搜都是一大堆使用教程。

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

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

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

登录界面:

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

登录界面.png
  • android5.0 引入了Z轴的概念,所以有两个新属性值得注意:
    • android:elevation 设置该组件“浮”起来的高度,设置该属性可以让该组件呈现3D效果。
    • android:translationZ 设置该组件在Z方向(垂直屏幕方向)上的位移。
《用安卓5.0新特性打造酷炫的登录注册界面》

Material Design.jpg
  • 跳转代码
    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新特性打造酷炫的登录注册界面》

注册界面.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新特性打造酷炫的登录注册界面》

喜欢就点个赞呗
点赞