1. 程式人生 > >Android自定義控制元件之虛線的用法

Android自定義控制元件之虛線的用法

Android實現畫虛線的方法

Android中可以通過DashPathEffect來實現,想知道關於PathEffect的詳細用法,請移步PathEffect的詳細用法

程式碼示例:

PathEffect effects = new DashPathEffect(new float[]{30,10},step);
mPaint.setPathEffect(effects);

引數說明:

  • float陣列中的第一個表示虛線實現的長度,第二個就表示間隙大小,然後虛線就會一次迴圈重複
  • step表示虛線的偏移量

還可以通過改變虛線的偏移量來實現一定的動畫效果,下面是全部程式碼

private void init(){

    mPaint = new Paint();
    mPaint.setStyle(Paint.Style.STROKE);
    mPaint.setColor(Color.RED);
    mPaint.setStrokeWidth(10);

    mPath = new Path();
    mPath.moveTo(0,20);
    mPath.lineTo(400,20);
    mPath.lineTo(400,200);
}

@Override
protected void onDraw(Canvas canvas) {
    PathEffect effects = new DashPathEffect(new float[]{30,10},step);
    mPaint.setPathEffect(effects);
    step+=1;
    canvas.drawPath(mPath,mPaint);

    invalidate();
}

下面是程式碼效果圖:

圖片效果圖