android滚动球面布局

在某网站上看到一个效果,就是关键字的布局呈球状排布,并可以根据鼠标的移动而旋转。于是也想在Android实现同样的效果,顺便封装成通用的控件,说不定以后就可以用到了。

说干就干,大家先看看我的实现效果,Github地址:https://github.com/dgutkai/RollingBall.git,欢迎fork。

一、技术选型

开始我选择自定义一个View,在View的OnDraw方法中绘制球形,然而这种方法最大的一个缺点就是球形元素不能很好添加事件。于是改成现在的方法,即集成ViewGroup,将子控件的按照球形摆布,这样每一个子控件可以单独接受事件,也可以在XML任意布局控件。

二、球形布局理论推导

A、球面上每点的坐标(x, y, z)

x=R\cdot cos\theta \cdot sin\phi

y=R\cdot sin\theta \cdot cos\phi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值