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

