如何在Android中手动旋转EditText

时间:2012-10-01 10:27:27

标签: android android-ui custom-component

我有一个图像编辑Android应用程序,我在其中使用放置在EditTextView上的自定义ImageView。此图像视图也是可以旋转,缩放,拖动等的自定义视图...现在,我想拖动此EditText并在点击按钮时旋转。这是我的自定义EditTextView

public class TemplateTextView extends EditText {
    private static float angle;
    // We can be in one of these 3 states
    private int mode = NONE;
    // Remember some things for zooming
    PointF start = new PointF();
    PointF mid = new PointF();
    PointF startMargins = new PointF();
    float oldDist = 1f;

    /**
     * Constructor for TemplateTextView
     * 
     * @param context
     * @param attrs
     * @param defStyle
     */
    public TemplateTextView(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);

        // mWindowManager = (WindowManager)
        // context.getSystemService(Context.WINDOW_SERVICE);
    }

    /**
     * Constructor for TemplateTextView
     * 
     * @param context
     * @param attrs
     */
    public TemplateTextView(Context context, AttributeSet attrs) {
        this(context, attrs, 0);

    }

    /**
     * Constructor for TemplateTextView
     * 
     * @param context
     */
    public TemplateTextView(Context context) {
        this(context, null);
    }
}

长按鼠标时会拖动EdittextView。如何旋转和拖动此视图?

1 个答案:

答案 0 :(得分:1)

对于旋转,您可以在TemplateTextView的onDraw-Method中执行此操作:

@Override
  protected void onDraw(Canvas canvas) {
    canvas.rotate(angle, canvas.getClipBounds().right/2, canvas.getClipBounds().bottom/2);
    super.onDraw(canvas);
  }

干杯,老兄