Android onDraw()中的EditText
我知道如何添加EditText,但不知道如何在onDraw()函数中添加Android onDraw()中的EditText,android,android-edittext,ondraw,Android,Android Edittext,Ondraw,我知道如何添加EditText,但不知道如何在onDraw()函数中添加 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(new GaugeAnimation((this),10));
EditText input = (EditText) findViewById(R.id.input);
input.setText("hello");
}
上述方法不起作用,以下方法也不起作用:
@Override
public void onDraw(Canvas c){
EditText input = (EditText) findViewById(R.id.input);
input.setText("hi");
}
那我该怎么做呢?我基本上希望添加一个可编辑的文本框,但因为我没有使用:
setContentView(new R.layout.main);
搞砸了。有什么建议吗
我试过:
public class GaugeAnimation extends View{
public GaugeAnimation(Context context, int value){
EditText input = new EditText(context);
input.setId(R.id.input);
}
}
但是它仍然不起作用,我做错了什么?当您构建
gaugeeanimation
视图时,请确保它调用setId(R.id.input)
用于输入的EditText视图。那么你的第一种方法就行了
您应该知道,不应该像您尝试的那样从视图的
onDraw
方法更新UI元素。当您构建GaugeImation
视图时,确保它为您要用于输入的EditText视图调用setId(R.id.input)
。那么你的第一种方法就行了
您应该知道,您不应该像您尝试的那样从视图的
onDraw
方法更新UI元素。我想您必须将edittext膨胀到视图才能使用它。如果没有膨胀,您的edittext尚未实例化。我想您必须将edittext膨胀到视图才能使用它。如果没有膨胀,您的编辑文本尚未实例化。抱歉,我有点困惑,我尝试了它(如上所述),但仍然不起作用。或者,我有点困惑,我尝试了它(如上所述),但仍然不起作用