登录 立即注册
安币:

重庆时时彩倍投计划表|Android右滑关闭Activity界面功能-自定义控件实现 [复制链接]

2018-2-12 19:21
Emotion_sk 阅读:111 评论:0 赞:0
Tag:  

引言

本文来源:http://www.oneupabq.com/a/www.huoshannews.com/

重庆时时彩独胆倍投 www.oneupabq.com,  AI打擂棋手作陪  其实Master并非唯一踢馆的AI。股东中,金美欧出资5100万元,天津广鸿伟业物业有限公司(以下简称天津广鸿伟业)出资4900万元。

Android右滑关闭Activity界面功能,网上已经有好多优秀的开源代码和项目,不过大部分都是结合ViewDragHelper来实现的,这里要讨论的是通过结合ValueAnimator来实现,目前我的控件只实现了从左往右(上往下)滑关闭界面。

需求

  • 在界面上从左往右滑,View位置根据手势移动。

  • 只拦截左右滑动,上下方向的滑动无影响。

  • 子View的左右滑动事件无影响。

预览图

image

实现思路

  • SwipeBackLayout:左右滑动View

  • onInterceptTouchEvent:该方法只要做左右移动拦截,上下移动不拦截。

  • ValueAnimator:该动画只要改变SwipeBackLayout View的位置,在ACTION_UP和界面打开时调用。

  • ACTION_MOVE时,根据移动的X位移,修改SwipeBackLayout View的位置。

主要代码分析

onFinishInflate

image

该方法只要实现两种方式,一种是通过布局xml文件来初始化SwipeBackLayout;另外一种是新new SwipeBackLayout。

onLayout

image
image

该方法只要是在初始化成功之后,修改SwipeBackLayout的位置。

onInterceptTouchEvent

image
image

该方法只要是拦截左右移动和判断是否在左右不拦截的子View集合里面。

onTouchEvent

image
该方法只要在用户左右移动的时候,修改SwipeBackLayout的位置。

image
image

该方法只要是ACTION_UP的时候,需要判断当前SwipeBackLayout的left位置,如果left位置小于屏幕的一半,则使用ValueAnimator动画,让SwipeBackLayout位置还原到正常位置。否则,关闭SwipeBackLayout。

dispatchDraw

image

该方法只要是在SwipeBackLayout移动的时候,绘画阴影。

源码

具体的代码和调用Demo,可到源码地址处查看:https://github.com/zhangliangming/SwipeBackLayout.git

最后

如果有问题,可到github上面留言。

分享到:
我来说两句
facelist
您需要登录后才可以评论 登录 | 立即注册
所有评论(0)

站长推荐

通过邮件订阅最新安卓weekly信息
上一条 /4 下一条

下载安卓巴士客户端

全国最大的安卓开发者社区

广告投放| 下载客户端|申请友链|手机版|站点统计|重庆时时彩独胆倍投 ( 粤ICP备15117877号 )

返回顶部
小说 小说 小说 小说 小说 小说
小说 小说 小说 小说 小说 小说
小说 小说 小说 小说 小说 小说
贵州快3怎么中 北京快乐8开奖记录 福建31选7今天 5月26日黑龙江十一选五开奖结果 刮刮乐在线试刮
福彩3d字谜专区 极速时时彩规律 陕西11选五开奖结果 体彩11选5最聪明的玩法 球探足球比分直播