我有一个视图,我在onDraw(Canvas画布)方法中使用Canvas对象进行绘制.我的代码是:
Paint paint = new Paint();
paint.setColor(Color.WHITE);
paint.setStyle(Style.FILL);
canvas.drawPaint(paint);
paint.setColor(android.R.color.black);
paint.setTextSize(20);
canvas.drawText("Some Text", 10, 25, paint);
Run Code Online (Sandbox Code Playgroud)
问题是文字没有透过背景显示,我做错了什么?如果我删除canvas.drawPaint(paint)和paint.setColor(android.R.color.black),你可以看到屏幕上的文字......
我知道DP,SP和PX之间的区别.在搜索了这个主题后,我发现没有什么能让我完全满意.也许这篇文章是重复的,但我仍然想知道从DP到PX,DP到SP,从SP到PX,从PX到SP,从SP到DP,从DP到SP的转换公式是什么?我知道一些代码可以做到这一点,但它们并不完美.
对于我的Android游戏,我有一些电话Canvas.drawText().
为了测试,我使用标准的字体大小似乎工作正常.
但是,当我将分辨率提高到更高的密度时,会自动加载较大的图像,但文本现在非常小.
有没有一种简单的方法来计算应该绘制文本的大小,还是我必须手动执行此操作?