1. 程式人生 > >關於Android自定義view 你所需要知道的基本函式

關於Android自定義view 你所需要知道的基本函式

開始時之前想吐槽一句。。iphone的鬧鐘,12小時制。我成功的把鬧鐘訂到了下午5:00 導致錯過一班飛機。心疼改簽費。

候機ing,沒有事做,來寫一下學習自定義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類提供了點繪製線的功能,看例子

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所用到的最基本的函式,歡迎補充。

相關推薦

關於Android定義view 需要知道基本函式

開始時之前想吐槽一句。。iphone的鬧鐘,12小時制。我成功的把鬧鐘訂到了下午5:00 導致錯過一班飛機。心疼改簽費。 候機ing,沒有事做,來寫一下學習自定義view必須掌握的基本函式。這裡只挑一些常用的進行講解。 首先 往Canvas上面draw需要一個Paint

關於Android的.so檔案需要知道

原文連結 早期的Android系統幾乎只支援ARMv5的CPU架構,你知道現在它支援多少種嗎?7種! Android系統目前支援以下七種不同的CPU架構:ARMv5,ARMv7 (從2010年起),x86 (從2011年起),MIPS (從2012年起),A

定義View--要掌握的基本知識

View的基礎知識 注1:本文內容純作者手打原創,如需轉載請註明出處。 注2:作者目前在找工作,初級安卓工程師的水平如有需要的請留言或私信,萬分感謝。 開篇 作為android中承擔視覺化功能的控制元件,雖然View不是四大元件,不過

Android定義View需要一個簡單好用、含歷史搜尋記錄的搜尋框嗎?

前言 Android開發中,類似下圖的搜尋功能非常常見 今天,我將帶來一款 封裝了 歷史搜尋記錄功能 & 樣式 的Android 自定義搜尋框 開源庫,希望你們會喜歡。

Android定義View的實現方法,帶一步步深入瞭解View(四)

不知不覺中,帶你一步步深入瞭解View系列的文章已經寫到第四篇了,回顧一下,我們一共學習了LayoutInflater的原理分析、檢視的繪製流程、檢視的狀態及重繪等知識,算是把View中很多重要的知識點都涉及到了。如果你還沒有看過我前面的幾篇文章,建議先去閱讀一下,多瞭解一些

Android定義View的實現方法 帶一步步深入瞭解View

                不知不覺中,帶你一步步深入瞭解View系列的文章已經寫到第四篇了,回顧一下,我們一共學習了LayoutInflater的原理分析、檢視的繪製流程、檢視的狀態及重繪等知識,算是把View中很多重要的知識點都涉及到了。如果你還沒有看過我前面的幾篇文章,建議先去閱讀一下,多瞭解一些原

手把手帶畫一個動態錯誤提示 Android定義view

嗯。。再差1篇就可以獲得持之以恆徽章了,今天帶大家畫一個比較簡單的view。 轉載請註明出處:http://blog.csdn.net/wingichoy/article/details/50477108 廢話不多說,看效果圖: 首先 建構函式 測量... 這裡就一筆帶

手把手帶畫一個 時尚儀表盤 Android 定義View

拿到美工效果圖,咱們程式設計師就得畫得一模一樣。 為了不被老闆噴,只能多練啊。 聽說你覺得前面幾篇都so easy,那今天就帶你做個相對比較複雜的。 轉載請註明出處:http://blog.csdn.net/wingichoy/article/details/50468

Android定義View一步一步實現即刻點贊效果

前言 今天朋友看了HenCoder的自定義View後說,HenCoder對自定義View講的不錯。實踐中仿寫即刻的點贊你有思路嗎,你不實現一下?二話不說,看了朋友手機效果,對他說:實現不難,用到了位移,縮放,漸變動畫和自定義View的基礎用法,好,那我實現一下,剛好加深對自定義View的理解。 素材準備

關於 Android 程序保活,需要知道的一切

早前,我在知乎上回答了這樣一個問題:怎麼讓 Android 程式一直後臺執行,像 QQ 一樣不被殺死?。關於 Android 平臺的程序保活這一塊,想必是所有 Android 開發者矚目的內容之一。你到網上搜 Android 程序保活,可以搜出各種各樣神乎其技的做法,絕大多數都是極其不靠譜。前段時間,Gith

Android 定義view完全解析--帶通透了解定義view

Android LayoutInflater原理分析 相信接觸Android久一點的朋友對於LayoutInflater一定不會陌生,都會知道它主要是用於載入佈局的。而剛接觸Android的朋友可能對LayoutInflater不怎麼熟悉,因

Android定義View實戰-100行帶寫出SwitchButton

1 序言 網上很多自定義View的例子都非常詳細講解了如何寫出一個高效實用的自定義View,但是這些由於過於詳細,給予一些新手的學習造成了一定的困難,比如說,當初我要學習如何自定義下拉重新整理控制元件,結果,很多大神順便把一些在我看來 學習自定義View非必要的技術帶了進來

關於Android Studio裡的Gradle,需要知道的都在這裡了

前言 你是不是有這種感覺,每當你使用Android Studio的時候,總會被她的優雅和便捷深深的吸引,但是一旦開啟build.gradle檔案就有一種想死的衝動,這尼瑪都是什麼啊,老子看不懂啦(ノಠ益ಠ)ノ彡┻━┻ ,不要著急,這篇文章就是來解救你的,看完這篇文章,你

Android定義View之IndicatorView,顯示當前tab頁處位置的View

概述 Android IndicatorView的靈感來源於SlidingTabView,雖然有句“不重複”造輪子在先,本著練手的目的,還是寫了一個功能較為簡單的類似view。 其比SlidingTabView在功能上欠缺的一點是:暫時沒有新增“當內容顯示不

手把手教打造一個心電圖效果View Android定義View

大家好,看我像不像蘑菇…因為我在學校呆的發黴了。 思而不學則殆 麗麗說得對,我有奇怪的疑問,大都是思而不學造成的,在我書讀不夠的情況下想太多,大多等於白想,所以革命沒成功,同志仍需努力。 好了廢話不說了,由於布總要做一個心電圖的玩意,所以做來練練手

Android 定義View

wid declare created odi lex getwidth 實現 tdi led   最近在看鴻洋大神的博客,在看到自定義部分View部分時,想到之前案子中經常會要用到"圖片 + 文字"這類控件,如下圖所示: 之前的做法是在布局文件中,將一個Imag

Android定義view詳解

this boolean mar 處理 都是 並且 jdk text 命名 從繼承開始 懂點面向對象語言知識的都知道:封裝,繼承和多態,這是面向對象的三個基本特征,所以在自定義View的時候,最簡單的方法就是繼承現有的View 通過上面這段代碼,我定義了一個Ske

Android -- 定義view實現keep歡迎頁倒計時效果

super onfinish -m use new getc awt ttr alt 1,最近打開keep的app的時候,發現它的歡迎頁面的倒計時效果還不錯,所以打算自己來寫寫,然後就有了這篇文章。 2,還是老規矩,先看一下我們今天實現的效果   相較於我們常見的倒計時

Android定義View效果目錄

class 重寫 自定義 textview 居中 url 冒泡 and 雷達圖 1、絢麗的loading動效的實現 2、Android自定義View:進度條+冒泡文本 3、Android雷達圖(蜘蛛網圖) 4、Android文本閃爍 5、Android繪制圓形進度條 6、重

Android定義View——實現水波紋效果類似剩余流量球

string 三個點 pre ber block span 初始化 move 理解 最近突然手癢就想搞個貝塞爾曲線做個水波紋效果玩玩,終於功夫不負有心人最後實現了想要的效果,一起來看下吧: 效果圖鎮樓 一:先一步一步來分解一下實現的過程 需要繪制一個正弦曲線(sin