我有一个静态方法,在该方法中我正在动态创建编辑文本。
Here is the code,
public static void done() {
EditText[] editText = new EditText[dynamiclen];
for (int n = 0; n < dynamiclen; n++) {
editText[n] = new EditText(clasname.this);
......
}
当我使用此代码时,我在classname中出现错误,这表示它无法获得引用。我什至尝试更改为clasname.class.getName().this,但我仍然无法解决它。任何帮助都会很棒
new EditText()
需要Context
而不是类名
因此,您可以像下面一样修改方法
public static void done(Context context) {
EditText[] editText = new EditText[dynamiclen];
for (int n = 0; n < dynamiclen; n++) {
editText[n] = new EditText(context);
......
}
只需这样做:
叫:
done(this);
方法定义:
public static void done(Context c) {
//...
}