我是新来的,所以不要责怪我。我正在尝试开发一个可以制作音乐的Android应用程序。我正在试图制作一个旋转过一堆以圆形显示的按钮,以及何时播放每个按钮所代表的声音的栏。但是到目前为止,我设法通过设置代表圆心的x和y坐标来使图像在屏幕中间旋转,但是当我尝试将公式(x + radius * sin(angle)),(y + radius * cos(angle)),它只是移动我想要旋转的图像。所以基本上我试图旋转一个图像周围的按钮或坐标定义的圆周,而不是一个实际的圆形图像。所以我需要将图像或imageView围绕一个圆圈旋转,而不仅仅是一个点。如何在圆周上旋转图像?
我已经添加了代码屁股,所以你可以看看我做错了什么。
ImageView bara = (ImageView) findViewById(R.id.floating_image);
layoutParams[9] = new RelativeLayout.LayoutParams
(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
toop = Math.round(size.x/2); // + 90*Math.sin(ANGLE));
lefft = Math.round(size.y/2); // + 90*Math.cos(ANGLE));
top = (int) toop;
left = (int) lefft;
layoutParams[9].setMargins(top, left, 0, 0);
bara.setLayoutParams(layoutParams[9]);
RotateAnimation rAnim = new RotateAnimation(0.0f, 360.0f, Animation.RELATIVE_TO_SELF, 0 , Animation.RELATIVE_TO_SELF, 0);
rAnim.setRepeatCount(Animation.INFINITE);
rAnim.setInterpolator(new LinearInterpolator());
rAnim.setDuration(8000);
bara.startAnimation(rAnim);
任何帮助将非常感激!
我真的不认为我知道该怎么做。我试图使一个循环,使图像转动1度,并在每个循环改变的移动位置( 360),但没有奏效 –