想要做成的效果就是上面的图上的效果,当小球碰到屏幕的边缘的时候,则会改变方向!
原理分析:
原理就是上图描述的那样了.
1速度V0,初始位置和初始角度是需要初始确定的
2根据初始角度和速度V0,计算出在XY轴上的分速度,然后draw完一次就更新一次小球的位置,不停的draw和更新位置
3更新位置后判断此时小球是否到达了X轴,Y轴的边界,如果是则更改在该轴的方向
代码分析:
1.确定初始值
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
top = getTop() + radius + paintWidth/2;
left = getLeft() &#