登录 立即注册
安币:
楼主: Emotion_sk
打印 上一主题 下一主题

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

[复制链接]

31

主题

59

帖子

573

安币

代码手工艺人

Rank: 4

QQ达人

跳转到指定楼层
楼主
发表于 2018-2-12 19:25:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本文来源:http://www.oneupabq.com/a/www.legalinfo.gov.cn/

重庆时时彩独胆倍投 www.oneupabq.com,  近年来,由于孙大业的个人魅力、浓厚的科研氛围,吸引了一批优秀人才回国加入他的团队。这相当于用一把尺子来量所有学科。

如果对本篇文章感兴趣,请前往,原文地址:/a/blog-278062-77072.html

# 引言 #Android右滑关闭Activity界面功能,网上已经有好多优秀的开源代码和项目,不过大部分都是结合ViewDragHelper来实现的,这里要讨论的是通过结合ValueAnimator来实现,目前我的控件只实现了从左往右(上往下)滑关闭界面。# 需求 #- 在界面上从左往右滑,View位置根据手势移动。- 只拦截左右滑动,上下方向的滑动无影响。- 子View的左右滑动事件无影响。# 预览图 #![image](http://upload-images.jianshu.io/upload_images/4111431-e94eaf9e8eb4e7f7?imageMogr2/auto-orient/strip|imageView2/2/w/1240)# 实现思路 #- SwipeBackLayout:左右滑动View- onInterceptTouchEvent:该方法只要做左右移动拦截,上下移动不拦截。- ValueAnimator:该动画只要改变SwipeBackLayout View的位置,在ACTION_UP和界面打开时调用。- ACTION_MOVE时,根据移动的X位移,修改SwipeBackLayout View的位置。# 主要代码分析 ### onFinishInflate ##![image](http://upload-images.jianshu.io/upload_images/4111431-41be0876124305a8?imageMogr2/auto-orient/strip|imageView2/2/w/1240)该方法只要实现两种方式,一种是通过布局xml文件来初始化SwipeBackLayout;另外一种是新new SwipeBackLayout。## onLayout ##![image](http://upload-images.jianshu.io/upload_images/4111431-832475c0c80d59a1?imageMogr2/auto-orient/strip|imageView2/2/w/1240)![image](http://upload-images.jianshu.io/upload_images/4111431-cae1c44ae6faf3a0?imageMogr2/auto-orient/strip|imageView2/2/w/1240)该方法只要是在初始化成功之后,修改SwipeBackLayout的位置。## onInterceptTouchEvent ##![image](http://upload-images.jianshu.io/upload_images/4111431-710c11bba7c88d43?imageMogr2/auto-orient/strip|imageView2/2/w/1240)![image](http://upload-images.jianshu.io/upload_images/4111431-b7ba883e7aedb278?imageMogr2/auto-orient/strip|imageView2/2/w/1240)该方法只要是拦截左右移动和判断是否在左右不拦截的子View集合里面。## onTouchEvent ##![image](http://upload-images.jianshu.io/upload_images/4111431-e192e291d83f3c7d?imageMogr2/auto-orient/strip|imageView2/2/w/1240)该方法只要在用户左右移动的时候,修改SwipeBackLayout的位置。![image](http://upload-images.jianshu.io/upload_images/4111431-1e520511e226d8bf?imageMogr2/auto-orient/strip|imageView2/2/w/1240)![image](http://upload-images.jianshu.io/upload_images/4111431-da9733d1fa183df3?imageMogr2/auto-orient/strip|imageView2/2/w/1240)该方法只要是ACTION_UP的时候,需要判断当前SwipeBackLayout的left位置,如果left位置小于屏幕的一半,则使用ValueAnimator动画,让SwipeBackLayout位置还原到正常位置。否则,关闭SwipeBackLayout。## dispatchDraw ##![image](http://upload-images.jianshu.io/upload_images/4111431-a7d54ab12b91058f?imageMogr2/auto-orient/strip|imageView2/2/w/1240)该方法只要是在SwipeBackLayout移动的时候,绘画阴影。# 源码 #具体的代码和调用Demo,可到源码地址处查看:[https://github.com/zhangliangming/SwipeBackLayout.git](https://github.com/zhangliangming/SwipeBackLayout.git "Android右滑关闭Activity界面控件")# 最后 #如果有问题,可到github上面留言。  继续阅读全文



想在安卓巴士找到更多优质博文,可移步博客区

如果对本篇文章感兴趣,请前往,
原文地址:
/a/blog-278062-77072.html
分享到:  QQ好友和群 QQ空间 微信
收藏收藏 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

站长推荐

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

下载安卓巴士客户端

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

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

快速回复 返回顶部 返回列表
小说 小说 小说 小说 小说 小说
小说 小说 小说 小说 小说 小说
小说 小说 小说 小说 小说 小说
2017pk10三把必中方法 彩票开奖查询江苏11选5 今日安徽快三走势图 北京时时彩开奖网站 福利彩票开奖直播
湖北11选5一定牛 平刷王重庆时时彩软件 澳客网大乐透杀号 福彩北京快中彩走势图 江苏11选5基本走势图淘宝彩票