我想用画布绘制圆圈.这是我的代码:
[MyActivity.java]:
public class MyActivity extends Activity
{
public void onCreate(Bundle savedInstanceState)
{
...
setContentView(new View(this,w,h));
}
}
Run Code Online (Sandbox Code Playgroud)
[View.java]:
public class View extends SurfaceView
{
public View(Context context, int w, int h)
{
super(context);
Canvas grid = new Canvas(Bitmap.createBitmap(h,w, Bitmap.Config.ARGB_8888));
grid. drawColor(Color.WHITE);
Paint paint = new Paint();
paint.setStyle(Paint.Style.FILL);
grid.drawCircle(w/2, h/2 , w/2, paint);
}
}
Run Code Online (Sandbox Code Playgroud)
所以我只有黑色的屏幕没有圆圈.为什么它不起作用?怎么解决?
我在画布上有两个点,现在我可以通过使用在这些点之间绘制一条线,如下图所示
这段代码 canvas.drawLine(p1.x, p1.y, p2.x, p2.y, paint);

我想画两点之间的弧线,如下图所示.

我怎么画这样的.
我有一个图像,我想在onClick()没有动画的按钮的圆形路径事件中移动它,
我不知道怎么做..有什么帮助?
这是我的主要课程
public class MainActivity extends Activity {
MyAnimation animation;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
animation =new MyAnimation ();
}
Run Code Online (Sandbox Code Playgroud)
我正在使用你给出的代码
public class MyAnimation extends Animation {
float cx,cy,prevX,prevY,r;
@Override
protected void applyTransformation(float interpolatedTime, Transformation t) {
super.applyTransformation(interpolatedTime, t);
float angle = (float) (interpolatedTime * 2 * Math.PI);
// r = radius, cx and cy = center point, a = angle (radians)
float x = (float) (cx + r * Math.cos(angle)) ;
float y …Run Code Online (Sandbox Code Playgroud)