Java 为什么我的editText没有显示在画布中?
我的最终目标是在画布上有一个简单的文本输入框,当用户单击该框时,可以在框中输入一些数字。这需要用Java而不是XML来完成 到目前为止,我的代码如下所示:Java 为什么我的editText没有显示在画布中?,java,android,Java,Android,我的最终目标是在画布上有一个简单的文本输入框,当用户单击该框时,可以在框中输入一些数字。这需要用Java而不是XML来完成 到目前为止,我的代码如下所示: public class MainMenu extends View{ EditText editText; public MainMenu(Context context) { super(context); editText = new EditText(context);
public class MainMenu extends View{
EditText editText;
public MainMenu(Context context) {
super(context);
editText = new EditText(context);
editText.setDrawingCacheEnabled(true);
editText.setVisibility(View.VISIBLE);
editText.setText("My Text");
editText.setWidth(180);
editText.setHeight(200);
editText.setLeft(500);
editText.setTop(500);
editText.setBackgroundColor(Color.WHITE);
editText.requestFocus();
}
@Override
protected void onDraw(Canvas canvas){
super.onDraw(canvas);
editText.draw(canvas);
invalidate();
}
}
有人知道为什么我的编辑文本不显示吗?你为什么要这样做?您想实现什么?如何在画布中绘制编辑文本您是否为主菜单指定了明确的大小?如果是这样,请检查它是否足够大以显示EditText(记住,它不知道EditText有多大)。如果没有,你可能需要这样做!Han,我已经看过那篇文章了,跟着看了,但是没有变化。stkent,没有明确的大小,大小取决于模拟器的屏幕。左侧等于200,顶部等于500的坐标是一个应该工作的位置。在该位置执行canvas.drawText()调用会在那里绘制文本。