1. 程式人生 > >Android中Rect和RectF的區別和使用

Android中Rect和RectF的區別和使用

  Rect和RectF之間的區別和聯絡

   1.Rect的引數為int型別,而RectF的引數型別為float型別,從這一點上來看,RectF的精度更高一些,但是他們都是通過四個座標引數來確定一個矩形的區域。

     RectF一共有四個構造方法: 
   RectF()構造一個無參的矩形 
   RectF(float left,float top,float right,float bottom)構造一個指定了4個引數的矩形 
   RectF(Rect F r)根據指定的RectF物件來構造一個RectF物件(物件的左邊座標不變) 
   RectF(Rect r)根據給定的Rect物件來構造一個RectF物件 

   RectF提供了很多方法,下面介紹幾個方法: 
   Public Boolean contain(RectF r);判斷一個矩形是否在此矩形內,如果在這個矩形內或者和這個矩形等價則返回true,    同樣類似的方法還有public Boolean contain(float left,float top,float right,float bottom)和public Boolean contain(float x,float y)。 
   Public void union(float x,float y)更新這個矩形,使它包含矩形自己和(x,y)這個點。

   2.Rect和RecF的用法基本類似,只是引數為int型別,Rect(int left,int top,int right,int bottom),所取得的圖形區域為

weight(right - left),height(bottom - top),在繪製的時候要注意這四個座標之間的關係。

   關於Android自定義view的其他總結日後會慢慢新增!