FloatingView

Project Url: PhoneSj/FloatingView
Introduction: 融球效果的悬浮控件
More: Author   ReportBugs   
Tags:

响应操作有 5 种:

  • CLICK 点击操作
  • LEFT 向左拖拽
  • UP 向上拖拽
  • RIGHT 向右拖拽
  • DOWN 向下拖拽

View 布局结构

外面一个 WarpFloatView 里面一个 FloatView

事件处理

  • WrapFloatView 处理长按、点击事件
  • FlatView 处理 move 事件,并判断拖拽方向

绘制解析

该效果中有两个圆球,这里定义为 Ball 类,有两个继承类:

  • OutterBall 记录外面圆球参数
  • InnerBall 记录里面圆球参数

Ball类负责根据当前圆球的参数绘制圆球。有如下参数:

  • mParentCenter FloatView 的中心点
  • mCenter Ball 的中心点
  • mRadius 垂直方向半径
  • mLeftRadius 左半径
  • mRightRadius 右半径
  • mAngle 绘制时,画板的旋转角度

示意图如下:

普通效果图:

悬浮效果图

Apps
About Me
GitHub: Trinea
Facebook: Dev Tools