Android在单击时以编程方式添加editText

Android在单击时以编程方式添加editText,android,android-layout,android-layoutparams,Android,Android Layout,Android Layoutparams,所以我知道onClick部分是非常无用的,但是为了防止它改变什么,我把它放在那里了。因此,我得到了onClick,我希望它将editText添加到当前活动中,称为activity\u calculation。 我目前有另一个问题的代码: public void addCalc(View view){ EditText myEditText = new EditText(context); // Pass it an Activity or Context myEditText.

所以我知道onClick部分是非常无用的,但是为了防止它改变什么,我把它放在那里了。因此,我得到了onClick,我希望它将editText添加到当前活动中,称为activity\u calculation。 我目前有另一个问题的代码:

public void addCalc(View view){

EditText myEditText = new EditText(context); // Pass it an Activity or Context
        myEditText.setLayoutParams(new LinearLayoutCompat.LayoutParams(MATCH_PARENT,WRAP_CONTENT)); // Pass two args; must be LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT, or an integer pixel value.
        activity_calculation.addView(myEditText);

    }

任何帮助都将不胜感激。也许你可以先看看我做错了什么

获取活动根布局的参考。为此,请将id属性添加到活动布局文件的根布局中。例如:

<LinearLayout
    android:id="+id/rootLayout" />

为什么要在onClick中创建。。。。在onClick期间隐藏编辑文本并更改可见性也。。。这可能很容易。。。。你也可以考虑…如果possible@MaharithAdityaSS我使用onClick是因为我需要用户添加他所需要的编辑文本,这不是一个固定的数量,在这里我可以更改可见性,如果你理解我的意思…?可能会重复括号中应该包含的内容,即contextTry rootView.getContext()不认为你可以这样做,现在尝试一下,但它被标记为错误,我是新手,但我认为这是因为rootview只是在稍后的blockEdited中被赋予了一个值来修复这个问题。这似乎可以解决问题,谢谢。我还有最后一个问题,我的
addView
是红色的,我导入了editText小部件。不知道这个问题是从哪里来的
//If your root layout is a RelativeLayout, use that instead
LinearLayout rootView = (LinearLayout) findViewById(R.id.rootLayout);
EditText myEditText = new EditText(rootView.getContext()); 
myEditText.setLayoutParams(new LinearLayoutCompat.LayoutParams(MATCH_PARENT,WRAP_CONTENT)); 
rootView.addView(myEditText);