0

我想以 180 度显示 textview。如何显示这样的 textview在此处输入图像描述我已经通过扩展 textview 尝试过。但我无法设置长度和高度,我不知道为什么。

public class MyTextView180 extends TextView {

private int angle = 180;

public MyTextView180(Context context, AttributeSet attrs) {
    super(context, attrs);
    this.setGravity(Gravity.CENTER);
}

@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
    super.onMeasure(widthMeasureSpec, heightMeasureSpec);
    setMeasuredDimension(getMeasuredWidth(), getMeasuredWidth());
}

@Override
protected void onDraw(Canvas canvas) {
    canvas.save();
    canvas.translate(getCompoundPaddingLeft(), getExtendedPaddingTop());
    canvas.rotate(angle, this.getWidth() / 2f, this.getHeight() / 2f);
    super.onDraw(canvas);
    canvas.restore();
}

public void setAngle(int textAngle) {
    angle = textAngle;
}

}

4

1 回答 1

1

文本视图 | Android 开发者链接

如何不扩展 TextView 并使用 setRotation(float)、setRotationX(float)(和 y)。如有必要,也不要忘记设置枢轴点。

于 2013-07-28T11:52:30.207 回答