圆弧百分比
来源:互联网 发布:网络语9999是什么意思 编辑:程序博客网 时间:2024/05/04 23:41
效果
代码
package com.cainiao.nursingrelease.ui.views;import com.cainiao.nursingrelease.R;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.graphics.RectF;import android.util.AttributeSet;import android.util.DisplayMetrics;import android.view.View;/** * 我的发布自定义view * 项目:NursingRelease * @author liujie *日期:2015-11-21下午3:04:17 */public class PersionView extends View {private int ScrWidth,ScrHeight; //演示用的百分比例,实际使用中,即为外部传入的比例参数 private float arrPer[] = new float[]{20f,30f,50f}; //RGB颜色数组private final int arrColorRgb[][] = { {129, 193, 106},{255, 255, 255}, {253, 180, 90}} ;public PersionView(Context context, AttributeSet attrs, int defStyle) {super(context, attrs, defStyle);// TODO Auto-generated constructor stubDisplayMetrics dm = getResources().getDisplayMetrics();ScrHeight = dm.heightPixels;ScrWidth = dm.widthPixels;}public PersionView(Context context, AttributeSet attrs) {super(context, attrs);// TODO Auto-generated constructor stubDisplayMetrics dm = getResources().getDisplayMetrics();ScrHeight = dm.heightPixels;ScrWidth = dm.widthPixels;} public void onDraw(Canvas canvas){//画布背景canvas.drawColor(getResources().getColor(R.color.title_bg)); float cirX = ScrWidth / 2; float cirY = ScrHeight / 5; float radius = ScrHeight / 7 ;//150; float arcLeft = cirX - radius; float arcTop = cirY - radius ; float arcRight = cirX + radius ; float arcBottom = cirY + radius ; RectF arcRF0 = new RectF(arcLeft ,arcTop,arcRight,arcBottom); //画笔初始化Paint PaintArc = new Paint(); PaintArc.setAntiAlias(true);Paint PaintLabel = new Paint(); PaintLabel.setTextSize(22); canvas.drawText("author:xiongchuanliang", 50, ScrHeight - 280, PaintLabel); PaintLabel.setColor(Color.WHITE);PaintLabel.setTextSize(16); float Percentage = 0.0f; float CurrPer = 0.0f;int i= 0; for(i=0; i<arrPer.length; i++) { //将百分比转换为饼图显示角度 Percentage = 360 * (arrPer[i]/ 100); Percentage = (float)(Math.round(Percentage *100))/100; //分配颜色 PaintArc.setARGB(255,arrColorRgb[i][0], arrColorRgb[i][1], arrColorRgb[i][2]); //在饼图中显示所占比例 canvas.drawArc(arcRF0, CurrPer, Percentage, true, PaintArc); CurrPer += Percentage; } //画圆心 PaintArc.setColor(getResources().getColor(R.color.title_bg)); canvas.drawCircle(cirX,cirY,4*radius/6,PaintArc); }}
0 0
- 圆弧百分比
- 自定义view圆弧家百分比
- SVG path绘制百分比圆弧,给力啊
- Android 实现渐变色的交替圆弧,显示进度百分比
- 百分比
- 百分比
- 百分比
- 百分比
- 百分比
- 圆弧Dialog
- canvas-圆弧
- 圆弧插补
- j2me-绘制圆弧
- 苹果图标圆弧
- ios画圆弧
- 三维空间圆弧拟合-原创
- opengl画圆弧,画圆
- 自定义 DialogFragment 边框圆弧
- 自动定义瀑布流控件的实现<一>
- Android 获取ImageView中的Bitmap
- JavaScript 对象 实例
- web java开发流程
- C语言资料
- 圆弧百分比
- UVa 10891 (区间DP)
- 我的web系统权限设计
- 国外期刊投稿、审稿过程以及常用术语
- 有弹性的scollview
- (NO.00004)iOS实现打砖块游戏(一):素材的制作
- 不滑动的viewpage
- Elasticsearch分片控制
- 【LEETCODE】169-Majority Element