我尝试使用方法drawCircle(...)在Canvas的帮助下创建一个圆。但最终为什么让我成为一个椭圆而不是一个圆?我怎样才能得到“真实”的圈子?Android Canvas.drawCircle()错误。持续绘制椭圆而不是圆形
Bitmap bitmap = Bitmap.createBitmap((int) (widthView), heightView, Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
Paint paint = new Paint();
paint.setColor(Color.parseColor("#FF950000"));
paint.setAntiAlias(true);
paint.setStyle(Style.FILL);
canvas.drawRect(0.0f, 0.0f, widthView, heightLevel, paint);
paint.setColor(Color.parseColor("#FFD4A503"));
canvas.drawRect(0.0f, heightLevel, widthView, 2 * heightLevel, paint);
paint.setColor(Color.parseColor("#FF4A7816"));
canvas.drawRect(0.0f, 2 * heightLevel, widthView, 3 * heightLevel,
paint);
paint.setColor(Color.parseColor("#FFFFFFFF"));
canvas.drawCircle(30 * density, getLevelHeight(1), 20f, paint); graphicView.setBackgroundDrawable(new BitmapDrawable(getResources(),
bitmap));
结果:
的Nexus 4
华为G500Pro(服务)
尝试使用'setImageBitmap()'而不是'setBackgroundDrawable()' – Vikram
谢谢,这对我有帮助。请做你的评论作为答案 - 我会投票(最佳答案)。 –
感谢Siruk,很高兴我能帮上忙。 – Vikram