半圆列表视图
2016-08-23
0 0 0
暂无评分
其他
如何获取积分?
翻译 maninwest@Codeforge 作者: huyletran, @ Codeproject
Listview 项目呈圆形显示。
让列表视图垂直显示很常见,但是如何创建一个列表视图呈圆形显示呢?
怎么做
当然,必须自定义视图来创建这样的效果。我使用 SurfaceView 来创建这个列表视图。经过分析,这个问题包括:
如何在圆形状画图像?
如何在滚动时让列表视图作为圆形的一部分排列?
如何画图像呈圆形?
假设一个圆,圆心为 (centerX, centerY) ,半径为 r。点P 角度 alpha,表示为以下公式:
P(x) = centerX + cos(alpha) *r.
P(y) = centerY - sin(alpha) * r.
这样我们可以在圆上绘制项目
如何在滚动时让列表视图作为圆形的一部分排列?
这个问题是当用户滚动时,如何更新每个项目的的角度。我们必须指定滚动角度并添加到每个项目的当前角度。我使用 GestureDetector 来控制此事件。在这个类中,我的重点是使用以下函数来指定滚动角度。
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY)
根据 e2, distanceX, 和 distanceY, 滚动角度如下图所示
<
java
列表
视图
相关源码推荐
使用Java开发Android AOA Android开放式附件
0
0
暂无评分
VPN源码加速器
0
0
暂无评分
VPN源码
0
0
暂无评分
springboot校园招聘系统
0
0
暂无评分
java智能二维码门禁管理系统
0
0
暂无评分
暂无评论