亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在Android使用自定義View實現餅狀圖

發布時間:2021-05-24 18:02:21 來源:億速云 閱讀:179 作者:Leah 欄目:移動開發

本篇文章為大家展示了如何在Android使用自定義View實現餅狀圖,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

1.效果圖

如何在Android使用自定義View實現餅狀圖如何在Android使用自定義View實現餅狀圖

2.代碼實現

public class PieChartView extends View { 
 private Paint mPaint; 
 private List<PieData>pieDataList; 
 // 餅狀圖初始繪制角度 
 private float mStartAngle = 0; 
 public PieChartView(Context context) { 
 this(context, null); 
 } 
 public PieChartView(Context context, @Nullable AttributeSet attrs) { 
 super(context, attrs); 
 init(); 
 } 
 public void setData(List<PieData> dataList){ 
 if (null == dataList || dataList.size() == 0) 
 return; 
 pieDataList = dataList; 
 invalidate(); //觸發onDraw 
 } 
 private void init() { 
 mPaint = new Paint(); 
 mPaint.setAntiAlias(true); 
 mPaint.setStyle(Paint.Style.FILL); 
 mPaint.setStrokeWidth(4); 
 rectF = new RectF(100f, 100f, 600f, 600f); //正方形背景 
 } 
 private RectF rectF; 
 @Override 
 protected void onDraw(Canvas canvas) { 
 super.onDraw(canvas); 
 if (null == pieDataList || pieDataList.size() == 0) 
 return; 
 float currentAngle = mStartAngle; 
 for (int i = 0;i<pieDataList.size();i++){ 
 PieData pieData = pieDataList.get(i); 
 mPaint.setColor(pieData.color); 
 canvas.drawArc(rectF,currentAngle,pieData.angle,true,mPaint); //畫弧 
 currentAngle += pieData.angle; 
 } 
 } 
}

3.使用:

int values[] = {30, 30, 40}; //右側的圖的數據,{10, 20, 70} 圖左 
List<PieData> pieDataList = new ArrayList<>(); 
PieData pieData1 = new PieData(); 
pieData1.percentage = (float) values[0] / 100; 
pieData1.angle = pieData1.percentage * 360; 
pieData1.color = Color.RED; 
pieDataList.add(pieData1); 
PieData pieData2 = new PieData(); 
pieData2.percentage = (float) values[1] / 100; 
pieData2.angle = pieData2.percentage * 360; 
pieData2.color = Color.GREEN; 
pieDataList.add(pieData2); 
PieData pieData3 = new PieData(); 
pieData3.percentage = (float) values[2] / 100; 
pieData3.angle = pieData3.percentage * 360; 
pieData3.color = Color.YELLOW; 
pieDataList.add(pieData3); 
 
PieChartView pieChartView = new PieChartView(mContext); 
pieChartView.setData(pieDataList); 
addView(pieChartView);

Android是什么

Android是一種基于Linux內核的自由及開放源代碼的操作系統,主要使用于移動設備,如智能手機和平板電腦,由美國Google公司和開放手機聯盟領導及開發。

上述內容就是如何在Android使用自定義View實現餅狀圖,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

达州市| 承德县| 巴彦淖尔市| 应城市| 左贡县| 铜梁县| 钦州市| 杨浦区| 静乐县| 惠州市| 延边| 乐昌市| 呼图壁县| 蒙阴县| 长武县| 漳州市| 金阳县| 太仆寺旗| 寿光市| 杂多县| 岢岚县| 杭锦旗| 仪征市| 当涂县| 昆山市| 南涧| 温宿县| 思茅市| 雷波县| 临沂市| 读书| 波密县| 肥城市| 岢岚县| 遵义市| 宜都市| 鄯善县| 新丰县| 绥芬河市| 定结县| 无为县|