我要畫出一塊由不規(guī)則path組成的區(qū)域,并且這個path因為視覺效果需要設置圓角,我就通過Paint.setPathEffect(new CornerPathEffect(300)); 給設置了圓角,但是在通過這個path組合成區(qū)域的時候因為這個圓角的設置整個區(qū)域都有圓角的效果了,這不是我想要的。
創(chuàng)新互聯是一家集網站建設,文成企業(yè)網站建設,文成品牌網站建設,網站定制,文成網站建設報價,網絡營銷,網絡優(yōu)化,文成網站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯網需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網站。如圖,黑色是我的path,紅色是我設置了圓角的由path組成的區(qū)域。四個角落都有了圓角的效果,這不是我想要的。
而藍色區(qū)域是未設置圓角的,此時path一側的區(qū)域就不符合標準了。
以下是我的全部代碼
public class PathEffectView extends View { private Path line; private Paint linePaint; private Path range; private Paint rangePaint; private final Paint paint3; public PathEffectView(Context context, @Nullable AttributeSet attrs) { super(context, attrs); linePaint = new Paint(Paint.ANTI_ALIAS_FLAG); linePaint.setStrokeWidth(10); linePaint.setColor(Color.BLACK); linePaint.setStyle(Paint.Style.STROKE); linePaint.setPathEffect(new CornerPathEffect(300)); rangePaint = new Paint(linePaint); rangePaint.setColor(Color.BLUE); rangePaint.setStyle(Paint.Style.FILL); paint3 = new Paint(linePaint); paint3.setColor(Color.RED); } @Override protected void onSizeChanged(int w, int h, int oldw, int oldh) { super.onSizeChanged(w, h, oldw, oldh); line = new Path(); range = new Path(); line.moveTo(0,1000); line.rLineTo(200,-150); line.rLineTo(200,300); line.rLineTo(200,-350); line.rLineTo(200,320); line.rLineTo(200,-370); line.lineTo(w,800); range.addPath(line); range.lineTo(w,h); rangePaint.setPathEffect(null); range.lineTo(0,h); range.close(); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); canvas.save(); canvas.translate(0,-20); canvas.drawPath(line, linePaint); canvas.restore(); canvas.drawPath(range, rangePaint); canvas.drawPath(range,paint3); } }
分享題目:android開發(fā)PathEffect問題處理-創(chuàng)新互聯
本文來源:http://muchs.cn/article2/dcjpoc.html
成都網站建設公司_創(chuàng)新互聯,為您提供Google、用戶體驗、電子商務、企業(yè)網站制作、微信公眾號、做網站
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯