详解Android中那些酷炫返回方式的实现

Android手机都会有返回键,无论是实体键,仍是虚拟键。Android用户主要也都是经过这个返回键操控页面返回方式的,不比IOS逼格甚高的只保留一个操做键。这种方式是最广泛的返回方式,还有一种也是比较常见的,那就是页面内部本身响应。绝大多数APP每一个页面的设计图顶部左侧都会有一个返回键图标,偶尔也有奇葩的设计放在底部左侧,点击这个图标即finish掉当前页面。简单的介绍完了最多见的两种方式,下面为你们介绍两种更友好的交互方式。 android

拿你们比较经常使用的三款社交软件的交互来讲。腾讯微博的返回方式除去上述说的两种,还有一种是这样的,当手势落在页面的左侧,随手势滑动页面也跟着滑动。当手指抬起时,X坐标大于屏幕宽度的一半时,页面会继续向右侧滑进而finish当前页面;若是X坐标仍在屏幕的左侧的话,页面是会侧滑到原先的位置,还原当前页面。若是有描述不清或者不大明白的地方,请打开手机上的腾讯微博本身体验一下。 git

还有一种交互方式,就是目前QQ、新浪微博采用的,交互是这样的。手指落下的位置能够随意,可是当手指抬起时,只要能知足两个条件,当前页面会自动finish的。 github

条件1、对应X坐标的位移要大于某个阀值,大概是屏幕宽度的1/3的样子(X坐标横向向右增大) 微信

条件2、Y坐标的位移的绝对值小于某个阀值,大概在20dp左右,主要为了防止Y位移的干扰(Y坐标纵向向下增大) spa

若有不清,打开两者中任一体验一下。 .net

下面我就为你们介绍这两种比较新鲜的交互方式的实现。为了方便,我把二者的功能都抽象到了基类BaseActivity中了,若是哪一个页面须要添加这两种交互方式,直接继承就能实现功能了。 设计

交互一实现,封装的很好,使用很简单 继承

交互二实现 ip

看下效果: get

若有兴趣和需求的同窗,请到Github上面 clone。

源码地址:https://github.com/JackCho/AndroidSwipBack

若是以为对你有所帮助,欢迎你们订阅个人微信公众帐号——Android干货分享(ID:android_share)。下面是微信的二维码,为你提供及时高质的Android干货。技术交流QQ群:318588906,欢迎你们加群,共同探讨下Android和Java技术,一块儿壮大咱们的微信干货分享社区。

相关文章
相关标签/搜索