如何制作一个自定义的Edittext,使它看起来像android中旋转了45度

如何制作一个自定义的Edittext,使它看起来像android中旋转了45度,android,android-layout,android-emulator,android-widget,Android,Android Layout,Android Emulator,Android Widget,如何制作自定义Edittext,使其在android中看起来像旋转了45度,并且应该是可编辑的,以便用户可以在旋转后的Edittext上输入文本。我尝试过。但我没有得到任何解决方案。请给出一些想法。您可以尝试像这样覆盖Edittext onDraw方法 @Override protected void onDraw(Canvas canvas) { canvas.save(); canvas.rotate(45.0f,xpivot,ypivot); //rotate arou

如何制作自定义Edittext,使其在android中看起来像旋转了45度,并且应该是可编辑的,以便用户可以在旋转后的Edittext上输入文本。我尝试过。但我没有得到任何解决方案。请给出一些想法。

您可以尝试像这样覆盖Edittext onDraw方法

@Override
protected void onDraw(Canvas canvas) {
     canvas.save();
     canvas.rotate(45.0f,xpivot,ypivot); //rotate around (x,y) pivot point 
     super.onDraw(canvas);
     canvas.restore();
}

我还没有测试过这个,但我认为它应该可以工作

“自定义EditText”表示扩展EditText并覆盖draw方法,以所需方式绘制文本

我找到了一种不同的方法,它正在发挥作用

EditText lEditTxt = (EditText)findViewById(R.id.Edit_ID);
        Animation lAnim = new RotateAnimation(0, -45, 250, 50);
        lAnim.setRepeatCount(Animation.INFINITE);
        lEditTxt.startAnimation(lAnim);
        getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);

这就行了。为了澄清这一点,您必须编写一个自定义的
RotatedEditText扩展EditText
,其中只有这个+构造函数。不过,我认为您还需要做一些与触摸事件相关的额外工作。您所做的只是旋转绘制小部件。感谢大家的快速回复。在API级别11+上,在常规的
EditText
上使用。