我尝试使用canvas.rotate()方法使文本垂直。但是在android 4.0 - 4.1上我得到了一个“跳舞字母”,看截图。什么是hapenning,我该如何解决?请帮帮我。
4.0 - 4.1结果:
正常结果:
这是代码
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
Paint textPaint = new Paint();
textPaint.setColor(Color.WHITE);
textPaint.setTextSize(30);
canvas.rotate(90);
canvas.drawText(text, 0, -getWidth()/2, textPaint);
canvas.save();
canvas.restore();
}
答案 0 :(得分:0)
简单地说,你可以尝试一下:
使用textView
并在其上设置rotateAnimate
并setDuration
至少设置setFillAfter(true)
,如下所示:
RotateAnimation rt = new RotateAnimation(0, 90,textView.getLayoutParams().width/2,textView.getLayoutParams().height/2);
rt.setDuration(1);
rt.setFillAfter(true);
textView.startAnimation(rt);
它很简单