Android自定義view 你所需要知道的基本函數(shù)總結(jié)
Android自定義view 你所需要知道的基本函數(shù)
首先 往Canvas上面draw需要一個Paint。 畫筆常用的函數(shù)有哪些呢。由于木有調(diào)試環(huán)境,函數(shù)基本上默寫,有錯請評論提出,蟹蟹!
Paint p = new Paint();
//設(shè)置畫筆的顏色
p.setColor(Color.parseColor("#2EA4F2"));
//設(shè)置畫筆的風(fēng)格:全部填充FILL 只畫輪廓STROKE
p.setStyle(Paint.Style.STROKE);
//設(shè)置畫筆的寬度
p.setStrokeWidth(8);
//設(shè)置是否抗鋸齒
p.setAntiAlias(true);
//設(shè)置文字大小
p.setTextSize(30);
//測量字符串的長度
p.MeasureText("Hello World");
當(dāng)我們有了畫筆后,就可以繪制基本圖形。
線:
//繪制一條從0,0到100,100的線 canvas.drawLine(0,0,100,100,p); 三角形&多邊形 是用Path類實現(xiàn)的。Path類提供了點繪制線的功能,看例子 [java] view plain copy 在CODE上查看代碼片派生到我的代碼片 path.MoveTo(0,0);//給定path的起點 path.LineTo(10,10);//往10,10繪制一條路徑 path.LineTo(5,3);//繼續(xù)從10,10往5,3繪制一條路徑 path.close;//將繪制的線形成封閉空間 canvas.drawPath(path,p);
矩形:
//畫一個矩形,左上角的坐標(biāo)為0,0 右下角的坐標(biāo)為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);
弧形 注意這里第二個參數(shù),是從三點鐘方向為0°計算,所以想從12點中方向開始繪制,那么就是270°。第四個參數(shù)是決定是否經(jīng)過圓心(自己改變一下這個參數(shù)就知道區(qū)別了)。
//畫一個弧,弧所在矩形為rectF 從270°開始,畫90° 不經(jīng)過圓心 canvas.drawArc(rectF,270,90,false,p);
以上基本上是自定義view所用到的最基本的函數(shù),歡迎補(bǔ)充。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
- Android studio 運行main 函數(shù)的方法
- 詳解Android應(yīng)用main函數(shù)的調(diào)用
- Android Studio生成函數(shù)注釋的實現(xiàn)方法
- Android自定義View的三個構(gòu)造函數(shù)
- Android編程計算函數(shù)時間戳的相關(guān)方法總結(jié)
- Android 自定義View的構(gòu)造函數(shù)詳細(xì)介紹
- Android編程之匿名內(nèi)部類與回調(diào)函數(shù)用法分析
- Android自定義View構(gòu)造函數(shù)詳解
- Android Chronometer控件實現(xiàn)計時器函數(shù)詳解
- Android nativePollOnce函數(shù)解析
相關(guān)文章
Android Dialog仿ios9中UIAlertController控件
這篇文章主要為大家詳細(xì)介紹了Android Dialog仿ios9中UIAlertController控件,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-06-06
RecyclerView設(shè)置間距和添加分割線的方法
在使用RecyclerView布局,經(jīng)常需要調(diào)整間距和添加分割線以達(dá)到更美觀效果,這篇文章主要介紹了RecyclerView設(shè)置間距和添加分割線的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-09-09
Android 進(jìn)程間通信實現(xiàn)原理分析
只有你允許客戶端從不同的應(yīng)用程序為了進(jìn)程間的通信而去訪問你的service,以及想在你的service處理多線程,下面為大家詳細(xì)介紹下2013-06-06
Flutter進(jìn)階之實現(xiàn)動畫效果(一)
這篇文章主要為大家詳細(xì)介紹了Flutter實現(xiàn)動畫效果的第一篇,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-08-08
Android Google AutoService框架使用詳解
AutoService是Google開發(fā)一個自動生成SPI清單文件的框架??催^一些基于APT的三方框架源碼的讀者應(yīng)該有所了解。比如Arouter、EventBus等等2022-11-11
Android實現(xiàn)軟件列表的點擊啟動另外一個程序功能【附demo源碼下載】
這篇文章主要介紹了Android實現(xiàn)軟件列表的點擊啟動另外一個程序功能,涉及Android針對應(yīng)用程序的讀取、加載、啟動等操作相關(guān)技巧,需要的朋友可以參考下2016-07-07
Input系統(tǒng)之InputReader處理按鍵事件詳解
這篇文章主要為大家介紹了Input系統(tǒng)之InputReader處理按鍵事件詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11

