在Android视图中绘制一个虚线圆圈

sek*_*sek 8 android

我需要在视图中显示虚线圆圈.

U.P*_*U.P 15

尝试此解决方案:

public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);

            setContentView(demoview);
        }

        private class DemoView extends View{
            public DemoView(Context context){
                super(context);
            }

            @Override
            protected void onDraw(Canvas canvas) {
                super.onDraw(canvas);
                Paint p = new Paint();
                p.setColor(Color.RED);
                DashPathEffect dashPath = new DashPathEffect(new float[]{5,5}, (float)1.0);

                p.setPathEffect(dashPath);
                p.setStyle(Style.STROKE);
                canvas.drawCircle(100, 100, 50, p);

                invalidate();
            }
        }
}
Run Code Online (Sandbox Code Playgroud)

  • 在每个onDraw调用中创建一个新的Paint并调用invalidate()是个坏主意! (6认同)