Android自定義view 你所需要知道的基本函數
首先 往Canvas上面draw需要一個Paint。 畫筆常用的函數有哪些呢。由于木有調試環境,函數基本上默寫,有錯請評論提出,蟹蟹!
Paint p = new Paint(); //設置畫筆的顏色 p.setColor(Color.parseColor("#2EA4F2")); //設置畫筆的風格:全部填充FILL 只畫輪廓STROKE p.setStyle(Paint.Style.STROKE); //設置畫筆的寬度 p.setStrokeWidth(8); //設置是否抗鋸齒 p.setAntiAlias(true); //設置文字大小 p.setTextSize(30); //測量字符串的長度 p.MeasureText("Hello World"); 當我們有了畫筆后,就可以繪制基本圖形。
線:
//繪制一條從0,0到100,100的線 canvas.drawLine(0,0,100,100,p); 三角形&多邊形是用Path類實現的。Path類提供了點繪制線的功能,看例子[java] view plain copy 在CODE上查看代碼片派生到我的代碼片path.MoveTo(0,0);//給定path的起點 path.LineTo(10,10);//往10,10繪制一條路徑 path.LineTo(5,3);//繼續從10,10往5,3繪制一條路徑 path.close;//將繪制的線形成封閉空間 canvas.drawPath(path,p);
矩形:
//畫一個矩形,左上角的坐標為0,0 右下角的坐標為100,50 canvas.drawRect(0,0,100,50,p);
圓角矩形:
//一個矩形 RectF rectF = new RectF(0,0,100,50); //畫一個圓角矩形,大小為rectF,20,20分表表示左邊圓角的半徑和右邊圓角的半徑 canvas.drawRoundRect(RectF,20,20,p);
圓形
//畫一個圓,圓心為50,50 半徑為100 canvas.drawCircle(50,50,100,p);
弧形 注意這里第二個參數,是從三點鐘方向為0°計算,所以想從12點中方向開始繪制,那么就是270°。第四個參數是決定是否經過圓心(自己改變一下這個參數就知道區別了)。
//畫一個弧,弧所在矩形為rectF 從270°開始,畫90° 不經過圓心 canvas.drawArc(rectF,270,90,false,p);
以上基本上是自定義view所用到的最基本的函數,歡迎補充。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
新聞熱點
疑難解答