androidUI那些事(四)
2015-06-01 12:35
274 查看
今天分析了小红书的第二版的开源代码,现在写下来,省的忘了。
第二版的动画中,引导界面有三个,第四个为登陆界面,引导界面布局整体一致,中央区域的动画变化。引导界面中,有图片区域的动画、文字区域的移动、指示圈的移动和一个跳过按钮。
在实现源代码中,将引导界面和登陆界面做成了viewpager的两个fragment进行管理,在引导界面中,放置图片的viewpager、文字的viewpager、指示器的listview布局,这样布局,就会出现大的viewpager的滑动事件处理和子区域图片的viewpager的处理、以及子区域文字的viewpager的冲突,为了统一处理,设计上,在父亲层面上,对手势动作进行拦截,在ontouchevent()中对手势具体识别,判断之后,决策 是调用子区域相关的动作(子类的ontouchevent),还是转到登陆界面。
类的结构设计上,使用了parentViewpager作为手势操作的总控制,放在主布局中,使用childviewpager代表文字和图片的viewpager(放了一些变量进行控制),三种动画分别使用fragment进行设计,登录界面和欢迎界面也是用fragment布局,并存放文字、图片的chidviewpager和指示器、按钮,文字的viewpager中设置监听器来控制指示器的移动,文字和图片的viewpager控制(也就是ontouchevent事件的触发)有parentviewpager进行处理。
这里是源代码
happy : 纪念一下六一的日子
第二版的动画中,引导界面有三个,第四个为登陆界面,引导界面布局整体一致,中央区域的动画变化。引导界面中,有图片区域的动画、文字区域的移动、指示圈的移动和一个跳过按钮。
在实现源代码中,将引导界面和登陆界面做成了viewpager的两个fragment进行管理,在引导界面中,放置图片的viewpager、文字的viewpager、指示器的listview布局,这样布局,就会出现大的viewpager的滑动事件处理和子区域图片的viewpager的处理、以及子区域文字的viewpager的冲突,为了统一处理,设计上,在父亲层面上,对手势动作进行拦截,在ontouchevent()中对手势具体识别,判断之后,决策 是调用子区域相关的动作(子类的ontouchevent),还是转到登陆界面。
类的结构设计上,使用了parentViewpager作为手势操作的总控制,放在主布局中,使用childviewpager代表文字和图片的viewpager(放了一些变量进行控制),三种动画分别使用fragment进行设计,登录界面和欢迎界面也是用fragment布局,并存放文字、图片的chidviewpager和指示器、按钮,文字的viewpager中设置监听器来控制指示器的移动,文字和图片的viewpager控制(也就是ontouchevent事件的触发)有parentviewpager进行处理。
这里是源代码
happy : 纪念一下六一的日子
相关文章推荐
- java之Queue
- 控制台界面与GUI相比的优缺点
- IE8 浏览器文本模式变为杂项(quirks)页面变形的解决方法
- UIScrollView+UIpageControl实现图片的循环滚动切换
- JS获取URL中参数值(QueryString)的4种方法分享
- UITableView的常用编辑操作
- MySQL中使用like查找汉字 Incorrect string value 解决办法
- SVN问题:Server sent unexpected return value (403 Forbidden) in response to OPTIONS
- 使用Xib封装一个自定义View
- extjs3.4集成ueditor将ueditor封装
- GUID与MD5加密
- unidac这家公司还做了一个sdac, 据说支持Table-valued parameter, 但unidac又不支持
- uefi读硬盘第一次成功,第二次却失败
- 01-复杂度2. Maximum Subsequence Sum (25)
- missing required architecture i386 解决方法
- Android-UI 超级优良超级多超级强大开源控件源码demo
- UIKit User Interface Catalog
- pb9生成guid的方法
- UITableViewCell的重用机制原理(转)
- java版mosquitto客户端使用SSL功能的具体操作总结