如何在Android中绘制EditText到画布?

时间:2013-09-04 18:31:51

标签: java android android-edittext android-canvas ondraw

我想画画

EditText username = new EditText(context);

到我画布上的特定位置

protected void onDraw(Canvas canvas) {

}

是否可以在我的Java文件中基于x,y坐标绘制它而不使用XML布局?

2 个答案:

答案 0 :(得分:3)

是的,您可以在EditText上绘制Canvas,这是提示:

EditText ed;
.
.
.
.
.   
ed.setDrawingCacheEnabled(true);
Bitmap b = ed.getDrawingCache();
canvas.drawBitmap(bitmap, l, t, r, b, null);

您可以在运行时创建/初始化EditText,如下所示:

EditText editText = new EditText(this);
editText.setText("My Text");
editText.setWidth(180);         
editText.setBackgroundColor(Color.WHITE);

答案 1 :(得分:-2)

您无法在Android中将EditText绘制到画布。这不是Canvas的用途。

你可以做的是使用FrameLayout,将Canvas放在其中,然后将EditText放在Canvas的顶部。