Android(安卓)代码画角标 offcutView
16lz
2021-12-04
效果如下:
代码:
<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(); } }
更多相关文章
- Android,visibility属性
- android 分段显示文本颜色控件
- android开机自启广播无效果的曲线解决方案
- 怎么让Linearlayout里面的textview垂直居中
- android字体小结
- [1] Android主要源代码组成
- Android(安卓)P窗口机制之Window加载流程
- android监听短信
- Android(安卓)Studio 活动的启动模式 standard singleTop single