日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

Android Rect 的使用以及与RectF的区别

發布時間:2023/11/27 生活经验 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android Rect 的使用以及与RectF的区别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Rect 保存矩形的四個整數坐標。矩形是由四條邊(左、上、右下)的坐標表示,

繪制矩形的時候用得到

 // 設置抗鋸齒效果 true是去邊緣會將鋸齒模糊化paint.setAntiAlias(true);// 設置畫筆的style (Paint.Style.FILL填充,Paint.Style.STROKE描邊,Paint.Style.FILL_AND_STROKE填充加描邊  )paint.setStyle(Paint.Style.FILL_AND_STROKE);// 設置畫筆的顏色paint.setColor(Color.RED);//設置描邊寬度paint.setStrokeWidth(10);// 繪制正方形canvas.drawRect(100, 100, 600, 300, paint);

這里沒有使用到Rect 下面使用Rect 繪制一下矩形

 // 設置抗鋸齒效果 true是去邊緣會將鋸齒模糊化paint.setAntiAlias(true);// 設置畫筆的style (Paint.Style.FILL填充,Paint.Style.STROKE描邊,Paint.Style.FILL_AND_STROKE填充加描邊  )paint.setStyle(Paint.Style.FILL);// 設置畫筆的顏色paint.setColor(Color.RED);//設置描邊寬度paint.setStrokeWidth(50);// 繪制正方形Rect rect = new Rect(200, 100, 800, 400);canvas.drawRect(rect, paint);

ok 繪制好了,但是這樣寫有警告添加一個注解警告才消失換成下面的寫法就沒有問題了

  // 設置抗鋸齒效果 true是去邊緣會將鋸齒模糊化paint.setAntiAlias(true);// 設置畫筆的style (Paint.Style.FILL填充,Paint.Style.STROKE描邊,Paint.Style.FILL_AND_STROKE填充加描邊  )paint.setStyle(Paint.Style.FILL);// 設置畫筆的顏色paint.setColor(Color.RED);//設置描邊寬度paint.setStrokeWidth(50);// 繪制正方形Rect rect = new Rect();rect.left = 200;rect.top = 100;rect.right = 800;rect.bottom = 400;canvas.drawRect(rect, paint);

從源碼里面我們可以看到Rect 里面的參數是int 類型的,

有時候我們使用的距離可能計算出來的比如某個高度的除以2 得出來的,可能不是int 類型 這個使用

就不適合使用Rect 了,我們可以使用RectF

我們可以看下RectF的源碼里面是float 類型的

它們的功能都是相同的,不同點就是它們的參數類型

RectF 畫的矩形如下 (參數自己隨便寫的定義float 類型)

  // 設置抗鋸齒效果 true是去邊緣會將鋸齒模糊化paint.setAntiAlias(true);// 設置畫筆的style (Paint.Style.FILL填充,Paint.Style.STROKE描邊,Paint.Style.FILL_AND_STROKE填充加描邊  )paint.setStyle(Paint.Style.FILL);// 設置畫筆的顏色paint.setColor(Color.RED);//設置描邊寬度paint.setStrokeWidth(50);// 繪制正方形RectF rect = new RectF();rect.left = 100.1f;rect.top = 100.1f;rect.right = 800.1f;rect.bottom = 400.1f;canvas.drawRect(rect, paint);

?

總結

以上是生活随笔為你收集整理的Android Rect 的使用以及与RectF的区别的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。