首页 > 代码库 > Android 代码画角标 offcutView
Android 代码画角标 offcutView
效果如下:
代码:
<com.andye.OffcutView android:layout_width="30dp" android:layout_height="30dp"/>
public class OffcutView extends View { private String Text ="";// private int textSize = 22; private int radius=6; public ChampionShipOffcutView(Context context) { super(context); } public ChampionShipOffcutView(Context context, AttributeSet attrs) { super(context, attrs); } public ChampionShipOffcutView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } @SuppressLint("DrawAllocation") protected void onDraw(Canvas canvas) { if(Text==null) { return; } int w = getWidth(), h = getHeight(); Paint paint = new Paint(); paint.setAntiAlias(true); paint.setStyle(Paint.Style.FILL); paint.setColor(Color.argb(255, 69, 112, 234)); canvas.drawCircle(radius, radius, radius, paint); Path path = new Path(); path.moveTo(radius, 0); path.lineTo( w, 0); path.lineTo(0, h); path.lineTo(0, radius); path.close(); canvas.drawPath(path, paint); canvas.save(); TextPaint textPaint = new TextPaint(); textPaint.setColor(Color.argb(255, 255, 255, 255)); textPaint.setAntiAlias(true); textPaint.setTextSize(w/4); float x,y; y=w*0.707f; y=(y*8)/10; x=(float) (-textPaint.measureText(Text))/2; canvas.rotate(-45); canvas.drawText(Text, x , y, textPaint); canvas.restore(); } public void setText(String str) { Text = str==null?"":str; invalidate(); } }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。