欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android使用自定義View實現(xiàn)餅狀圖的實例代碼

 更新時間:2018年05月15日 10:47:24   作者:meetings  
這篇文章主要介紹了Android使用自定義View實現(xiàn)餅狀圖的實例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

本文講述了Android使用自定義View實現(xiàn)餅狀圖的實例代碼。分享給大家供大家參考,具體如下:

1.效果圖


2.代碼實現(xiàn)

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(); //觸發(fā)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}; //右側(cè)的圖的數(shù)據(jù),{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使用自定義View實現(xiàn)餅狀圖的實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

最新評論